(一)class的前置声明
class的前置声明有两种。
pre.h class PreA {};
main.h class PreA; class Main {}; //或者 class Main { class PreA* A; };
(二) struct前置声明
struct的前置声明只能用第一种。
(三) 有typedef的前置声明
Pre.h a.h class object { ... }; struct myStruct { ... }; typedef object defMyObject; typedef myStruct defMyStruct;
Main.h typedef class object defMyObject; typedef struct myStruct defMyStruct; //或者 class object; typedef object defMyObject; struct myStruct; typedef myStruct defMyStruct;