如何在Delphi中声明类方法的类型?
发布时间:2020-12-15 04:30:28 所属栏目:大数据 来源:网络整理
导读:例如,如何为类过程声明类型 type TTest = class procedure Proc1; class procedure Proc2; class procedure Proc3; static; end; TProc1 = procedure of object; TProc2 = ???; TProc3 = ???; 解决方法 TProc2 = procedure of object; 类方法仍然具有Self指
例如,如何为类过程声明类型
type TTest = class procedure Proc1; class procedure Proc2; class procedure Proc3; static; end; TProc1 = procedure of object; TProc2 = ???; TProc3 = ???; 解决方法TProc2 = procedure of object; 类方法仍然具有Self指针.它是类而不是实例. 这样做的一个有趣结果是它提供了一种实现事件处理程序的方法,而无需实例化对象.例如,您可以使用类的类方法,该方法永远不会实例化为为全局Application对象提供事件处理程序的方法. TProc3 = procedure; 静态类方法没有自我指针.它与简单的过程类型兼容. 静态类方法可以用作全局范围过程的替代方法.这允许您将此类方法放在类的名称空间中,从而避免污染全局名称空间. 在实现不调用虚方法方法的静态类方法时要小心.此类调用在编译时静态绑定,因为缺少Self指针意味着无法在运行时进行动态多态绑定.相反令人失望的是编译器没有对此发出警告,所以你需要保持对你的智慧. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |