这是类引用的意思,简单的说,类也是一种对象,但是一般不能把类赋值给一个变量。
比如 avar:tcontrol声明了一个一般的tcontrol类的变量
接下来你就不能用以下语句avar:=tcontrol//左边是变量,右边是类但是你用 treftype= class of tcontrol,就声明的是一个类引用的变量
接下来你就可以用treftype:=twincontrol//
以后,你就可以用treftype来代替twincontrol了,
说穿了,一般作用是用来用一个自己喜欢的符号来代替系统默认的类的符号。

解决方案 »

  1.   

    也就是说,以后,twincontrol可以出现的地方,treftype都可以出现了。
    比如, oneclass:treftype;
    有人可能会想 treftype=class(tcontrol)可以完成同样的工作,
    但是如果你想再次改变treftype为tcontrol的子类如twincontrol的话,好象就不能用同一个名字来重载类了。最多只能把twincontrol的对象赋值给treftype类的变量。
    但是如果你用的treftype= class of tcontrol,
    下一步你就可以用 treftype:=twincontrol就行了。