Вниз
Скачать: CL | DM;

Функции   Найти похожие ветки 

 
AntonSh   (2004-10-01 17:26) [0]

У меня есть функция и процедура. Подскажите как мне в функцию передать в качестве параметра процедуру. Спасибо.


 
Sandman25 ©   (2004-10-01 17:30) [1]

type
 TFunctionParam = function(StringParam: String): Integer;
...
function Func1(AString: String): Integer;
...
procedure MyProc(FunctionParam: TFunctionParam);
...
MyProc(Func1);


 
МЯУ   (2004-10-01 17:36) [2]

Sandman25 ©   (01.10.04 17:30) [1]
набарот, процедуру в функцию, а не функцию в процедуру :)

type
 tprocedure = procedure(...);
var
 function fcn(prc: tprocedure): ...;


 
Sandman25 ©   (2004-10-01 17:37) [3]

[2] МЯУ   (01.10.04 17:36)

Согласен. Невнимательно прочитал.


 
AntonSh   (2004-10-01 17:41) [4]

Спасибо всё работает.


 
Zeon   (2004-10-02 01:50) [5]

Только когда будеш вызывать свою функцию, поставь перед именем процедуры(параметра) знак @ Тогда перед её вызовом в стек будет заноситься только адрес этой процедуры, а не вся процедура целиком. А это очень значительное экономие времени работы плюс дополнительная защита от переполнения стека.
fcn(@prc);


 
GuAV ©   (2004-10-02 02:31) [6]

Zeon   (02.10.04 01:50) [5]

> Тогда перед её вызовом в стек будет заноситься только адрес
> этой процедуры, а не вся процедура целиком. А это очень
> значительное экономие времени работы плюс дополнительная
> защита от переполнения стека.

Чушь.


 
Defunct ©   (2004-10-02 02:36) [7]

GuAV ©   (02.10.04 02:31) [6]
ага



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.023 c
14-1096029033
квакер
2004-09-24 16:30
2004.10.17
Команда в кваке


4-1094546471
MetalFan
2004-09-07 12:41
2004.10.17
заводской номер CD/Floppy


6-1091792327
Nata
2004-08-06 15:38
2004.10.17
Служба


3-1095046626
vasili
2004-09-13 07:37
2004.10.17
Вход в запароленную базу ADO


1-1096550104
M-Alex
2004-09-30 17:15
2004.10.17
Edit




   Наверх