欢迎使用我的 在线工具

小D

读历史、看小说、写程序都是我所爱。技术不好,头脑不灵光,靠的是兴趣。
随笔 - 35, 文章 - 25, 评论 - 13, 引用 - 0
数据加载中……

关于C++的头文件包含

 

如果类B仅使用了类A的指针或引用,那么一可以在类B的头文件中使用一个类A的前向声明就可以。这是因
为指针的长度只与平台有关。
而如果类B使用了类A的成员函数或成员变量的话,或者如果类B的定义中包含一个类A的对象而不是类A的
一个指针或引用的话,就不能只用前向声明了,因为B的头文件在编译(实际只是对其进行检查)时,编译
器需要知道B的大小,从而就需要知道A的大小。这时,就需要包含类A的头文件了。

如果类B仅使用了类A的指针或引用,那么一可以在类B的头文件中使用一个类A的前向声明就可以。这是因
为指针的长度只与平台有关。
而如果类B使用了类A的成员函数或成员变量的话,或者如果类B的定义中包含一个类A的对象而不是类A的
一个指针或引用的话,就不能只用前向声明了,因为B的头文件在编译(实际只是对其进行检查)时,编译
器需要知道B的大小,从而就需要知道A的大小。这时,就需要包含类A的头文件了。

 

posted on 2010-04-10 15:47 vagasnail 阅读(120) 评论(0)  编辑  收藏


只有注册用户登录后才能发表评论。


网站导航: