码迷,mamicode.com
首页 > 编程语言 > 详细

【C++】类类型

时间:2019-10-08 14:00:52      阅读:117      评论:0      收藏:0      [点我收藏+]

标签:指针   创建   返回   screen   span   成员   ack   scree   定义   

类的声明

  就像可以把函数的声明和定义分离开来一样,我们也能仅仅声明类而暂时不定义它:

class Screen; //Screen类的声明

  这种声明有时被称作前向声明(forward declaration),它向程序中引入了名字Screen并且指明了Screen是一种类类型。对于类型Screen来说,在它的声明之后和定义之前是一个不完全类型(incomplete type),也就是说,此时我们已知Screen是一个类类型,但是不清楚它到底包含哪些成员。

  不完全类型只能在非常有限的情况下使用:可以定义指向这种类型的指针或引用,也可以声明(但是不能定义)以不完全类型作为参数或者返回类型的函数。

  对于一个类来说,在我们创建它的对象之前必须被定义过,而不能仅仅被声明。否则,编译器就无法了解这样的对象需要多少存储空间。类似的,类也必须首先被定义(然后才能创建它的对象),再然后才能用引用或指针访问其成员。毕竟,如果类尚未定义,编译器也就不清楚该类到底有哪些成员。

  然而,一旦一个类的名字出现后,它就被认为是声明过了(但尚未定义),因此类允许包含指向它自身类型的引用或指针。

class Link_screen {
    Screen Window;
    Link_screen* next;
    Link_screen* prec;
};

 

【C++】类类型

标签:指针   创建   返回   screen   span   成员   ack   scree   定义   

原文地址:https://www.cnblogs.com/bootblack/p/11635018.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!