![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Классы
Liavik © (2005-07-30 15:59:00)Уважаемые мастера. Грызу классы, дошел до свойств и начал буксовать. Не пойму в чем проблема со свйством RMT_Kol_Type. Пытаюсь читать поле kol_type, при компиляции ругань (см. ниже). Вроде по книгам по докам все правильно, а нифига.. Где загвоздка?
type
TPRMT = class
error,
com_fd,
com_num: integer;
com_bits,
com_speed,
com_stop,
com_par: smallint;
com_name,
type_rmt,
reg_frame,
ans_frame: string;
kol_type: integer; ///!!!!!
rmt_array: array[1..MAX_TYPES_NETWORK, 1..2] of integer;
constructor RMT_Create(var err: integer);
property RMT_Kol_Type: integer read kol_type; ///// !!!!!!!
....
end;
for j:= 1 to TPRMT.RMT_Kol_Type do ///!!!!!!!!!!!!
if Rmt_Array[j, 1] = i then
break;
При компиляции ругается TPRMT.RMT_Kol_Type :
Method identifier expected
begin...end (2005-07-30 16:17:00) [1]> Liavik (30.07.05 15:59)
Свойства - это механизм доступа к полям, т.е. данным, содержащимся в экземпляре класса. Сам класс данных не содержит. Поэтому нужно объявить переменную классового типа и уже через неё обращаться к свойствам экземпляра класса. Не забыв, конечно, этот экземпляр сначала создать.
var
PRMT: TPRMT;
begin
PRMT := TPRMT.RMT_Create(...);
for j := 1 to PRMT.RMT_Kol_Type do
...
...
end.
Liavik (2005-07-30 16:15:00) [2]Всем спасибо! Нашел сам
RMT: TPRMT;
rmt.kol_par - будет правильней
>> По каким книгам и докам оное правильно?
Правильно! Нет таких книг. Я сам того
Anatoly Podgoretsky (2005-07-30 16:11:00) [3]Может действительно книги сменить, какие то странные они у тебя.
Leonid Troyanovsky (2005-07-30 16:04:00) [4]
> Liavik (30.07.05 15:59)
> ниже). Вроде по книгам по докам все правильно, а нифига..
> Где загвоздка?
По каким книгам и докам оное правильно?
--
Regards, LVT.