При использовании старого синтаксиса описания свойства с параметрами после спецификатора доступа указано поле класса.
Поля класса могут быть использованы только при описании свойств без параметров. Если свойство имеет параметры, то в качестве обработчиков должны использоваться методы.
После спецификатора доступа Get должен быть указан метод, имеющий такое же количество параметров, как и описываемое свойство.
После спецификатора доступа Set должен быть указан метод, имеющий количество параметров на один больше чем описываемое свойство. Первые параметры будут соответствовать индексам свойства. Последний параметр будет содержать устанавливаемое значение.
Class TestClass: Object
PropValue: String;
Public Property Item(i: Integer): String Get PropValue Set PropValue;
End Class TestClass;
При компиляции указанного кода будет сгенерирована ошибка «Индексированному свойству нельзя ставить в соответствие поля». Для разрешения ошибки необходимо выполнить одно из следующих действий:
В описании свойства убрать параметр «i».
После спецификатором доступа Get и Set указать идентификаторы функции и процедуры соответственно.
См. также: