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

Вниз

With как параметр   Найти похожие ветки 

 
Andy BitOff ©   (2005-01-12 13:25) [0]

Подскажите, как, если это возможно, передать как параметр...
Незнаю как сказать. Вообщем на примере объясню.


 with TSringList.Create do begin
   try
     ...
     SomeProc(<этот самый SringList>);
     ...
   finally
     Free;
   end;
 end;


 
jack128 ©   (2005-01-12 13:30) [1]

никак. Объявляй переменную.


 
Eraser ©   (2005-01-12 13:31) [2]

:-)) интересная ситуация.
Ответ виже только один. Обявляй в локальном (ну или глобальном) var"e переменную sl: TSringList! Допустим если у тебя это происходит внутри цикла, то

var sl: TSringList;
...
for i:=0 to count-1 do
begin
 sl:=TSringList.Create;
 ...
 someproc(sl);
 ...
 sl.free;
end;

А что ещё надо...


 
KSergey ©   (2005-01-12 13:32) [3]

На королевстве есть упоминание как можно извратиться, толькот смысла в этом нет
Если нужна ссылка - значит объявить переменную.


 
begin...end ©   (2005-01-12 13:39) [4]

> Andy BitOff ©   (12.01.05 13:25)

Это сделать можно, но намного проще объявить переменную.
А сделать можно, например, так:

type
 TMyProcedure = procedure of object;

function GetObject(Proc: TMyProcedure): TObject;
begin
 Result := TObject(TMethod(Proc).Data)
end;

with TStringList.Create do
begin
 SomeProc(GetObject(GetObject(Free)))
end.


 
Andy BitOff ©   (2005-01-12 13:49) [5]

Всем спасибо, я так и думал.

Одноко никто не заметил, а некоторые даже при копировании не заметили, что я допустил опечатку в слове SringList
:)))
Но я это, конечно не специально. :)))


 
Eraser ©   (2005-01-12 13:51) [6]

Andy BitOff ©
Молодец! Зауважал )))


 
Fay ©   (2005-01-12 13:53) [7]

>> Одноко
А это специально? 8)


 
Anatoly Podgoretsky ©   (2005-01-12 14:20) [8]

Andy BitOff ©   (12.01.05 13:49) [5]
Просто тактичные люди, не стали тыкать мордой в опечатку.


 
Семен Сорокин ©   (2005-01-12 14:30) [9]


> Anatoly Podgoretsky ©   (12.01.05 14:20) [8]
> Andy BitOff ©   (12.01.05 13:49) [5]
> Просто тактичные люди, не стали тыкать мордой в опечатку.

LOL
:)))))



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

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

Наверх




Память: 0.48 MB
Время: 0.038 c
1-1104761850
Viktop
2005-01-03 17:17
2005.01.23
Значок в левом верхнем углу


14-1104578232
speed
2005-01-01 14:17
2005.01.23
Новый год!


1-1104920197
AliceCat
2005-01-05 13:16
2005.01.23
Приведение типов: char -> double


3-1103529804
alex145
2004-12-20 11:03
2005.01.23
BDE глючит на полную


6-1099463072
MegaVolt
2004-11-03 09:24
2005.01.23
Самодельный файервол для чата.