头文件包含的两点原则
来源:互联网 发布:淘宝在线链接转换工具 编辑:程序博客网 时间:2024/06/11 15:17
两点原则
第一个原则
如果可以不包含头文件,那就不要包含了,这时候前置声明可以解决问题。如果使用的仅仅是一个类的指针,没有使用这个类的具体对象(非指针),也没有访问到类的具体成员,那么前置声明就可以了。因为指针这一数据类型的大小是特定的,编译器可以获知。
第二个原则
尽量在CPP文件中包含头文件,而非在头文件中。假设类A的一个成员是是一个指向类B的指针,在类A的头文件中使用类B的前置声明即可。如果在A的实现中(.cpp)我们需要访问B的具体成员,因此需要包含头文件,那么我们应该在类A的实现部分(CPP文件)包含类B的头文件而非声明部分(H 文件)。同理,命名空间的声明也应该尽量放在CPP文件中
参考文章:
头文件互相包含与error C2146: 语法错误 : 缺少“;”的问题
阅读全文
0 0
- 头文件包含的两点原则
- C++ 在.h文件中包含头文件和在.cpp文件中包含头文件的原则
- 头文件包含顺序以及设计原则
- 头文件的包含
- ACE 的头文件包含
- 头文件包含的区别
- 头文件包含的含义
- 头文件的包含顺序
- mfc包含的头文件
- ACE 的头文件包含
- C++ 头文件的包含
- 头文件的包含顺序
- 关于头包含头文件的问题
- 关于头文件文件包含的问题
- 文件包含 与 头文件的写法
- 文件包含与头文件的写法
- 一个包含所有c++的头文件的头文件
- 防止重复包含头文件的问题
- Matlab2017b启动慢,一直处于初始化状态的解决办法
- canvas实现简单的图片浏览器
- 实现可以获取最小值的栈
- Android更新UI界面的几种方法的使用
- 4th Largest Rectangle in Histogram
- 头文件包含的两点原则
- js中 [] ? true : false 的返回值为什么是true?
- 蓝桥杯 算法提高 彩票
- springmvc学习笔记(22)-springmvc开发小结
- java鬼混笔记:lucene 4、中文分词器--IKAnalyzer
- 初次接触银联支付
- java处理高并发高负载类网站的优化方法
- 修改Ubuntu的aptget源为阿里源的方法
- 最速曲线时间