在Forms单元中,有这样一句代码:TForm = class;这句代码该如何理解呢?

解决方案 »

  1.   

    就是类,先祖/祖先
    如TObject = class也是从class来的
      

  2.   


    那么class是如何定义的呢?
      

  3.   

    class是定义类的关键字,括号后面是继承哪个类。
      

  4.   

    Class后面如果没有任何类,默认来自TObject
      

  5.   

    记得曾经学c#时:C#所有类都是继承自TObject类,但又看到class前面没有TObject,打了一半又删除了呵。
      

  6.   

    TForm = class;这是提前声明,前面定义的类型引用到后面定义的类型,就需要在它前面加一个提前声明。
      

  7.   


    +1比如在TForm定义之前的TCustomForm类的function GetActiveMDIChild: TForm;就用到了TForm!所以需要提前声明,其实注释当中也指明了:
    { Forward declarations }  TScrollingWinControl = class;
      TCustomForm = class;
      TForm = class;
      TMonitor = class;