Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Передача процедуры... [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]

Передавай указатель


Наверх

Титульная страница Поиск, карта сайта Написать письмо