Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2010.11.28;
Скачать: CL | DM;

Вниз

ООП   Найти похожие ветки 

 
Scot Storch   (2010-08-17 13:10) [0]

в отдельном Unit"e находится класс TNode. В основном Unit"e создаю объект этого класса. При попытке назначить значение полю Name записи типа Tnode_info (upd_pack.FInfo.upd.Info.Name := "zzz";) ругается "Left side  cannot be assigned to". Как разрешить назначение этому полю?

 { Tnode_info }

 Tnode_info = record
   Name: string;
   Attrs: TAttrs;
 end;

 { TNode }

 TNode = class(TObject)
 private
   { ... }
   FInfo: Tnode_info;
   { ... }
 public
   constructor Create;
   destructor Destroy; override;
   { ... }
 {  }
   { ... }
   property Info: Tnode_info read FInfo write FInfo;
   { ... }
 end;


 
Ega23 ©   (2010-08-17 13:16) [1]


TNode = class(TObject)
public
  property Info: Tnode_info;
end;


Зачем тебе отдельное property для рекорда, если у тебя ни геттеров ни сеттеров?


 
12 ©   (2010-08-17 13:17) [2]


> upd_pack.FInfo.Info.Name := "zzz";

что такое это, по словам

(например,
upd_pack - модуль
FInfo - объект

)


> TAttrs;

это что?


 
12 ©   (2010-08-17 13:18) [3]

> upd_pack.FInfo.upd.Info.Name := "zzz";
это, по словам, что такое& каждое слово
Info.Name - понятно, до этого нет

> TAttrs;
это что?


 
Ega23 ©   (2010-08-17 13:32) [4]

Осечка.
TNode = class(TObject)
public
 Info: Tnode_info;
end;


property было лишнее.


 
Scot Storch   (2010-08-17 13:35) [5]


> Ega23


все ясно, спс



Страницы: 1 вся ветка

Текущий архив: 2010.11.28;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.009 c
15-1282342827
Rouse_
2010-08-21 02:20
2010.11.28
Ega23 - это залет номер два :)


2-1283944447
Саша
2010-09-08 15:14
2010.11.28
дельфи и HTML


4-1242025717
vvavva
2009-05-11 11:08
2010.11.28
как запустить программу через командную строку с параметрами?


2-1283506544
alles
2010-09-03 13:35
2010.11.28
Проблема с формами в разных dll


15-1281986990
Юрий
2010-08-16 23:29
2010.11.28
С днем рождения ! 15 августа 2010 воскресенье