![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Передача процедуры... [D5, Win95/98]
Landgraph © (2002-04-25 23:17:00)Как в функцию/процедуру передать другую функцию/процедуру для дальнейшего ее использования(запуска)?
Пробовал function asd(procedure(a:string)): byte; - матюкается на чем свет стоит =( Помогите, Оч. нада...
Cobalt (2002-04-28 23:36:00) [1]procedure TForm1.FormCreate(Sender: TObject);
type
TMyProc =procedure(a:string);
function asd(proc:TMyProc):byte;
begin
proc("This is a string");
Result:=1;
end;
procedure MyProc1 (a:string);
begin
///
end;
begin
asd(@MyProc1);
end;
>А что потом делать с указателем?
А потом делаешь преобразование указателя к процедуре/функции:
function asd(p:pointer):byte;
begin
TMyProc(p)("This is a string");
Result:=1;
end;
Landgraph (2002-04-27 20:21:00) [2]2Doom: А что потом делать с указателем?
2Slym: А как использовать TMyProc? Я что-то на подобии пробовал, а потом как присвоить TMyProc процедуру? Пишет неправильный тип TMyProc и procedure =(
Slym (2002-04-26 07:21:00) [3]type
TMyProc:procedure(a:string);
function asd(proc:TMyProc):byte;
Doom (2002-04-25 23:25:00) [4]Передавай указатель