是否可以在Delphi中创建一个类型方法?
问题描述:
它可以创建一个类型idenitifier例如:是否可以在Delphi中创建一个类型方法?
type PByte = ^Byte;
是否有可能做到以下几点:
function a:shortint;
begin
Exit(8);
end;
type b = a;
所以你可以称之为 “B” 和 “A”。可能吗?
我问,因为我想,以取代“退出”与“回报”这样我就可以把这个:
return(5);// for example
答
在我看来,你是在混淆功能类型和定义。您可以为方法和函数创建类型,并且可以在Delphi中每天使用它们,例如TNotifyEvent,这是在大多数使用用户控件的操作上调用的方法类型。这种类型允许你定义与某个头部相对应的函数(即期望的参数和返回值)。
一个完全不同的问题是函数指针 - 指向特定函数实例的指针,以便您可以“调用”指针并调用该函数。指针可以是某种类型的函数(如上所述),但这两个问题几乎没有任何关系。
第三个完全不相关的东西是函数的调用堆栈。如Tobias所述,Exit是一个保留的编译器指令,而不是一个函数本身。
总之,出于所有的实际目的,你想达到的目标是不正确的,而且是不可能的。你可能会“欺骗”Delphi接受类似的东西,但这只是错误的恕我直言。
退出是编译器的关键字。你为什么要改变它返回? – 2009-07-13 10:44:03
托比亚斯,反过来经常发生在新的C程序员身上。他们试图编写一个宏库,使C看起来像他们以前的语言,比如将`begin`定义为开头大括号。 John询问的问题表明他也在学习C#,所以他可能试图让它们看起来更加相似。 – 2009-07-13 14:40:16