经常看到代码里面有这样的写法,不知道有什么区别在头文件中加个 
Class 类名,然后该文件中就可以用该类的实例了,跟#include这个类的头文件有什么区别?

解决方案 »

  1.   

    Class 类名  这么写可以防止互相引用的问题。
    A和B两个类,互相都要用到对方指针的话。你如果用Include就报错了。因为互相引用了。
      

  2.   

    这么跟你讲吧
    从编译的角度来看
    用class前置声明比在.h中加#include编译速度快
    因为你的.h里面经常会加一些类的成员变量或改个函数名之类的
    在编译的时候,如果发现本次编译的头文件和上次不同,那就会强制更新当前目标的先决条件
    这浪费大量时间,那个防止交叉引用也是一个原因
    总之这是个好习惯