type
TMethod = procedure of object;
TNotifyEvent = procedure(Sender: TObject) of object;还有 Tclass = class of Tobject;本人Object-pascal没学好
TMethod = procedure of object;
TNotifyEvent = procedure(Sender: TObject) of object;还有 Tclass = class of Tobject;本人Object-pascal没学好
TMethod = procedure of object;
TNotifyEvent = procedure(Sender: TObject) of object;
这个是函数类型阿,和你的var i:integer差不多阿,一个是定义变量类型阿(integer)类型,还有一个是定义函数或者过程类型阿(这里是过程类型)阿!!TNotifyEvent 一个触发事件阿,
Tclass = class of Tobject;
这个是类引用阿!!这个是delphi的vcl类库在构造内部组件的使用当作rtti,运行时类型信息来使用的阿!!
TMethod = procedure of object;
TNotifyEvent = procedure(Sender: TObject) of object;
TMethod表示一个过程,of object 表示这个过程是一个类的方法
TNotifyEvent同理拉,只是这个过程带有 Sender: TObject的参数Tclass = class of Tobject;
TClass是一个“类的类”,如
procedure f(A:TClass);
var
r:TObject;
begin
r:=a.create;
......
end;
这样就可以将类型作为参数传入
如f(TObject),f(TStringList)等等
就象1,2,3是Integer类型
2.0,3.454是Double类型
Button1是Tbutton类型一样
TButton,TForm也是一种类型,就是类的类型
这样说可以明白了吗?
Delphi中的事件就是通过这种机制实现的
TMethod = procedure of object;
TNotifyEvent = procedure(Sender: TObject) of object;
前面的这个是定义方法也可以说定久一个事件方法,只不过他是一个方法指针了还有 Tclass = class of Tobject;
//这个是定义一个对象,也可以说引用,他有时在后面还会被其实的类进行重新定义的如:
Tclass = class of TLable;
TMethod = procedure of object;
TNotifyEvent = procedure(Sender: TObject) of object;
//上面两个都是方法类型,第二个带参数而已
Tclass = class of Tobject;
//这个是类引用,类引用就是指向该类VMT的指针