TCustomDeviceClass = class of TCustomCommDevice;
  TCustomCommDevice = class     
大家看看是什么意思。

解决方案 »

  1.   

    我已经回答过这个问题,不过现在那个贴子打不开了
    Tname = class of Tobject;
    的意思就是用Tname来表示一个类名(但它本身不是该类(只是一个名字)),以后它就可以用来代替Tobject这个类名了。所以你可以用以下的语句
                 var aclass:tname;
    它的作用就等于var aclass:tobject;
    比用原始的类名的方便在于,你可以用自己喜欢的命名方式来命名类。而且可以用派生类名来再次改变它的指向。
    比如Tname = class of tcontrol;
    下次用var aclass:tname;
    它的作用就等于var aclass:tcontrol;
    明白了吧
      

  2.   

    好像不是这么解释的。
    TCustomDeviceClass = class of TCustomCommDevice;
    这样定义,实际上是定义了一个指向类型的指针,这样类型也可以作为函数参数带入。
    象Application.CreateForm就非常典型。
    至于:
    TCustomCommDevice = class;纯粹是事先声明一下,因为Pascal不同于Java和C#,没有事先声明,决不能使用的。相当于函数声明中的forward;
      

  3.   

    这是一个类之类,  这样声明之后,TCustomDeviceClass就可以直接访问TCustomCommDevice的类函数了,
    TCustomDeviceClass被称为TCustomCommDevice的元类.