Delphi 定义两个互相包含的类
如果要定义两个类,其中第一个类中有一个成员的数据类型为第二个类,而第二个类中有一个成员的数据类型为第一个类,这时就需要在定义两个类之前预先对第二个类进行声明。
type
TSecond = class; //预先声明第二个类
TFirst = class
S1 : TSecond;
...
end;
TSecond = class //定义第二个类
F1 :TFirst;
...
end;
- 对于不指明父类的类来说,在预先声明时,最后保留字class和一个分号,以end;结束
- 对于指明父类的类来说,如果这个类没有成员列表,在定义体最后不要以end;结束
例如:
type
TFirstClass = class //类的预先声明
TSecondClass = class
end; //完整的类的定义
TThirdClass = class(TObject); // 完整的类的定义
非原创,只是做个笔记,来源China.bub.com