首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

请问一个关于方法指针的有关问题

2012-03-03 
请教一个关于方法指针的问题typeTSampleFunctionType function(iParam: Integer fParam: Double): Bool

请教一个关于方法指针的问题
type
  TSampleFunctionType = function(iParam: Integer; fParam: Double): Boolean;
  procedure xxxx;
  var
  ASampleFunction: TSampleFunctionType
  begin
  ...
  if Assigned(@ASampleFunction) then
  ASampleFunction(....);
  end;
  ASampleFunction作为一个局部变量,而且是一个指针,那么@ASampleFunction代表是这个指针的地址。问题:
  1 申请时就已经有地址了,为什么还要判断Assigned(@ASampleFunction)?
  2. ASampleFunction指向何处?
  请明白人赐教,确实不懂,真心求教!

[解决办法]
Assigned(@ASampleFunction)
其实是
Assigned(ASampleFunction)

因为ASampleFunction是函数指针,直接使用可能是执行此函数,所以加@以示区分
[解决办法]

探讨

引用:
Assigned(@ASampleFunction)
其实是
Assigned(ASampleFunction)

因为ASampleFunction是函数指针,直接使用可能是执行此函数,所以加@以示区分

Assigned(@ASampleFunction)
其实是
Assigned(ASampleFunction)
这个不敢苟同……

热点排行