IPB
ЛогинПароль:

 
 Ответить  Открыть новую тему 
> Property, FPC 2.0.0
volvo
сообщение 5.02.2006 22:07
Сообщение #1


Гость






Доброго времени суток всем smile.gif

Есть вот такая проблемка: написан класс, работающий с вектором (я приведу его сильно упрощенный вариант):
Type
TVector = Object
Private
T: Record
Case Boolean Of
False: (vec: Array[0 .. 2] Of Double);
True : (X, Y, Z: Double);
End;

Function GetArr(index: Integer): Double;
Procedure SetArr(index: Integer; v: Double);

Public
Constructor Create(x, y, z: Double); // Хотя это, в принципе, неважно...

Property Items[index: Integer]: Double Read GetArr Write SetArr; Default;
End;

Function TVector.GetArr(index: Integer): Double;
Begin result := T.vec[index] End;
Procedure TVector.SetArr(index: Integer; v: Double);
Begin T.vec[index] := v End;


Вроде все правильно, но не работает sad.gif
Чего хочется добиться? Чтобы можно было обращаться к элементам вектора через массив (НЕ через X, Y, Z) вот так:
Var
V: TVector;
Begin
V[0] := 12.3; // Аналогично V.T.vec[0];
V[1] := 34.5; // Аналогично V.T.vec[1];
...
End.

Если у кого-то есть какие-то предположения, You Are Welcome rolleyes.gif
 К началу страницы 
+ Ответить 
volvo
сообщение 5.02.2006 23:38
Сообщение #2


Гость






Все, спасибо, вопрос снят...

FPC позволяет устанавливать Default Property для Class-ов, а у меня был Object ...
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 31.05.2024 4:05
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"