编程规范
目的
规则并不是完美的,通过禁止在特定情况下有用的特性,可能会对代码实现造成影响。但是我们制定规则的目的“为了大多数程序员可以得到更多的好处”, 如果在团队运作中认为某个规则无法遵循,希望可以共同改进该规则。
参考该规范之前,希望您具有相应的C++基础能力,而不是通过该文档来学习C++。
- 了解C++的ISO标准;
- 熟知C++的基本语言特性,包括C++ 03/11/14/17相关特性;
- 了解C++的标准库;
重点关注
- 约定C++的编程风格,比如命名,排版等。
- C++的模块化设计,如何设计头文件,类,接口和函数。
- C++相关特性的优秀实践,比如常量,类型转换,资源管理,模板等。
- 现代C++的优秀实践,包括C++11/14/17中可以提高代码可维护性,提高代码可靠性的相关约定。
约定
规则:编程时必须遵守的约定(must)
建议:编程时应该遵守的约定(should)
本规范适用通用C++标准, 如果没有特定的标准版本,适用所有的版本(C++03/11/14/17)。
例外
无论是'规则'还是'建议',都必须理解该条目这么规定的原因,并努力遵守。但是,有些规则和建议可能会有例外。
在不违背总体原则,经过充分考虑,有充足的理由的前提下,可以适当违背规范中约定。例外破坏了代码的一致性,请尽量避免。'规则'的例外应该是极少的。
下列情况,应风格一致性原则优先:修改外部开源代码、第三方代码时,应该遵守开源代码、第三方代码已有规范,保持风格统一。**某些特定领域,优先参考其行业规范。**