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

Вниз

TList и объекты -экземпляры классов   Найти похожие ветки 

 
ghrup   (2004-08-31 22:49) [0]

Вопрос про TList.
function Add(Item: Pointer): Integer;

В помощи написано что вункция Add добавляет указатели на об
но как быть с объектами -экземплярами классов?
Вроде бы как в Delphi все объекты указатели, так ведь они же не явные указатели,
как например:

P:^TSomeRecord;
sr:TSomeRecord;
ls:TList;

sr.a:=3;
sr.b:=7;
P:=@sr;

ls:=TList.Create;
ls.Add(P);
ls.Add(TSomeClass.Create);//Такое использование Tlist правильно, или нет?
ls[1].free;

Ещё подобный вопрос.

Как правильно определять процедуру?

procedure proc(var ls:TStringList);

либо

procedure proc(ls:TStringList);

Есть ли разницы между ними?

В обоих случаях копирования из вызывающей ф-ии в вызываемую ф-ию не происходит,
так есть ли разница при вызове?


 
афвуд   (2004-08-31 22:53) [1]

ls:=TList.Create;
ls.Add(P);
ls.Add(TSomeClass.Create);
TSomeClass(ls[1]).Free;

Так правильней.


> procedure proc(var ls:TStringList);
> либо
> procedure proc(ls:TStringList);
> Есть ли разницы между ними?
> В обоих случаях копирования из вызывающей ф-ии в вызываемую
> ф-ию не происходит,
> так есть ли разница при вызове?


Есть. В первой процедуре можно будет поменять TStringList.


 
wicked ©   (2004-09-01 11:03) [2]


> procedure proc(var ls:TStringList);
> либо
> procedure proc(ls:TStringList);

разница есть, но не такая...
в первом случае в процедуру передается ссылка на ссылку на обьект (ссылка на переменную, которая является ссылкой на обьект) и в процедуре можно менять как сам обьект, так и ссылку на него...
во втором - передается ссылка на обьект TStringList, который (обьект) можно там менять...



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

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

Наверх




Память: 0.47 MB
Время: 0.042 c
1-1094464575
sergch
2004-09-06 13:56
2004.09.19
Как сохранить объект в потоке?


4-1091777599
Ricko
2004-08-06 11:33
2004.09.19
SMS и PDU


1-1093603571
Sonnik
2004-08-27 14:46
2004.09.19
добавление в MS Word строки с различным форматом текста


14-1094036018
ArMellon
2004-09-01 14:53
2004.09.19
Как определенной проге не дать доступ в интернет и


14-1093666950
menart
2004-08-28 08:22
2004.09.19
3-й номер RSDN-MAGAZINE