困惑的问题:如何把函数(Procedure,Function)作为参数传递?
出于一些特殊情况的考虑,我需要把procedure、function在过程之中传递。
类似于传递指向函数的指针,可是我不知道如何实现。
请大虾帮忙解决。
问题点数:50、回复次数:6Top
1 楼adailee(Adai Lee)回复于 2001-11-28 23:47:43 得分 0
UP一次。Top
2 楼jarjarbink(答案丢了)回复于 2001-11-28 23:57:02 得分 40
这个很简单,pascal支持特殊的函数“类型”,而且其间的匹配并非严格的按名匹配,比如:
你可以声明
type TMyFunction = function(i: integer): boolean;
function MyI(j: integer): boolean;
begin
...
end;
procedure OtherFunction(func: TMyfunction);
begin
...
end;
begin
...
OtherFunc(MyI);
...
end.
就可以啦。Top
3 楼adailee(Adai Lee)回复于 2001-11-29 00:00:47 得分 0
先谢谢jarjarbink(),我去调试一下。
Top
4 楼szchengyu(happy.net)回复于 2001-11-29 00:49:37 得分 10
type TMyProc = procedure (v: integer);
...
var mp: TMyProc
...
mp(v);
....Top
5 楼szchengyu(happy.net)回复于 2001-11-30 10:49:18 得分 0
呵呵,这样也能得分,
要是赚钱可以这样就好了!!!!!!!!Top
6 楼hssfox()回复于 2001-11-30 12:27:25 得分 0
学习
Top




