0.避免多重包含是学编程时基本的要求;

1. 前置声明是为了降低编译依赖,防止修改一个头文件引发多米诺效应;

2. 内联函数的合理使用可提高代码执行效率;

3. ‐inl.h 可提高代码可读性 (一般用不到吧:D);

4. 标准化函数参数顺序可以提高可读性和易维护性 (对函数参数的堆栈空间有轻微影响, 我以前大多是相同类型 放在一起);

5. 包含文件的名称使用 . 和 .. 虽然方便却易混乱, 使用比较完整的项目路径看上去很清晰, 很条理, 包含文件 的次序除了美观之外, 重要的是可以减少隐藏依赖, 使每个头文件在 “需要编译” (对应源文件处 :D) 的地 方编译, 有人提出库文件放在后, 这样出错先是项目内的文件, 头文件都放在对应源文件的前面, 这一点足 以保证内部错误的及时发现了.

最新文章

  1. Re 模块
  2. IOS高级编程之三:IOS 多线程编程
  3. Mysql 与日期和时间相关的函数
  4. XP+devOps开发模式与scrum敏捷开发对比,docker虚拟化
  5. css cursor属性详解
  6. oracle 配置 oem
  7. SQL SERVER 2012 SEQUENCE
  8. H5+Ajax+WebApi实现文件下载(进度条,多文件)
  9. Java 小记 — RabbitMQ 的实践与思考
  10. MySQL系列--1.安装卸载与用户权限管理
  11. delphi frame 添加 create onshow 事件
  12. iOS UI布局-VFL语言
  13. harbor镜像仓库-01-搭建部署
  14. python2.7中MySQLdb的安装与使用详解
  15. go 并发 demo
  16. QT的信号和槽机制简介
  17. github在版本库中删除某个文件的所有历史记录
  18. scala 有 + 运算符吗? - 03
  19. 2-5 js基础-简易运动框架
  20. 【Javascript-基础-Date】本地时间与UTC(GMT)时间转换

热门文章

  1. 【js基础修炼之路】- 微任务,宏任务和Event-Loop
  2. 【转载】#349 - The Difference Between Virtual and Non-Virtual Methods
  3. Linux 源码安装MariaDB 10.0.16
  4. 转:SSM框架——详细整合教程(Spring+SpringMVC+MyBatis)
  5. 在使用HTMLTestRunner时,报告为空,错误提示<_io.TextIOWrapper name='<stderr>' mode='w' encoding='utf_8'>
  6. 使用MongoDB 2.6 C++驱动中的连接池
  7. javaweb基础(37)_mysql数据库自动生成主键
  8. js循环读取json数据,将读取到的数据用js写成表格
  9. 关于Ubuntu 16.04 pip安装Docker-Compose
  10. 在haoodp-2.7.3 HA的基础上安装Hbase HA