C++ 类的前向声明、不完全类型和完全类型

2018-05-17  创建人:Ruo_Xiao
邮箱:xclsoftware@163.com

1、类的定义和声明也可以像函数一样分开。
栗子:

class CSys;

上述声明被称为前向声明。对于CSys来说,其声明之后和定义之前,被称为不完全类型

2、不完全类型的使用场景极其有限:
(1)定义指向该类型的指针和引用。
(2)声明(不能定义)以不完全类型作为参数和返回值的函数。
3、完全类型:类不光已经声明,而且完成了定义。
4、拓展:
类中不可以定义类本身,但是可以声明类自身的引用和指针。
栗子:

class A
{
public:
    A *pa;  //正确
    A a;    //error C2460: “A::a”: 使用正在定义的“A”
};

(SAW:Game Over!)

猜你喜欢

转载自blog.csdn.net/itworld123/article/details/80346433
今日推荐