Осуществляется обращение к индексированному свойству класса, но в классе отсутствует свойство, объявленное с директивой Default.
Одно из индексированных свойств класса должно быть объявлено с директивой Default, либо должен быть явно указан идентификатор свойства, к которому осуществляется обращение. Использование различных директив представлено в разделе Описания и синтаксические правила: Описание классов.
Class TestClass: Object
Temp: Array Of Integer;
Public Property Item(i: Integer): Integer
Get
Begin
Return Temp[i];
End Get
Set
Begin
Temp[i] := Value;
End Set
End Property Item;
End Class TestClass;
Sub Main;
Var
Obj: TestClass;
i: Integer;
Begin
Obj := New TestClass.Create;
i := Obj(1);
End Sub Main;
При компиляции указанного кода на строке «i := Obj(1);» будет сгенерирована ошибка «Для данного объекта класса TestClass отсутствует свойство 'по умолчанию'». Для разрешения ошибки необходимо выполнить одно из следующих действий:
явным образом указать идентификатор свойства Item - i := Obj.Item(1);
в описании свойства Item в классе TestClass указать директиву Default - End Property Item; Default;
См. также: