Google-C++编码规范中文版详细涵盖了编写高质量C++代码的规则和建议,它为开发者提供了一个清晰的编程风格指南,以便在Google开源项目中使用。规范内容详尽,从文件组织、命名规则到代码风格,从语法细节到注释习惯,都做出了详细的规定。 在头文件部分,规范强调了头文件应该是自包含的,以防止头文件之间产生循环依赖。它建议使用#define预处理指令来避免头文件被多重包含。规范中也提及了内联函数的使用,以及#include指令的路径选择和顺序。 作用域方面,规范讨论了命名空间的使用,以及匿名命名空间和静态变量的定义。对于非成员函数、静态成员函数和全局函数的使用,规范也提供了指导。此外,还指出了对局部变量、静态变量和全局变量的管理建议。 关于类的编写,规范提出了构造函数、默认构造函数、显式构造函数、拷贝构造函数的使用准则。对比了结构体与类的使用场景,并且对继承、多重继承、接口、运算符重载以及存取控制等高级特性提供了指导。 在函数的编写方面,规范强调参数顺序的重要性,推荐编写简短的函数,并且讨论了引用参数、函数重载、缺省参数以及函数返回类型后置语法的使用。 规范还提及了一些来自Google的编程技巧,比如使用智能指针来管理资源的所有权,以及如何使用cpplint工具来检查代码风格。 其他C++特性部分,规范讨论了引用参数、右值引用、函数重载、缺省参数、变长数组、友元、异常、运行时类型识别、类型转换、流、前置自增和自减、const和constexpr的使用、整型、64位下的可移植性问题、预处理宏、以及0、nullptr和NULL的区别。 命名约定部分详细说明了通用命名规则、文件命名、类型命名、变量命名、常量命名、函数命名、名字空间命名、枚举命名和宏命名等。特别指出了命名规则的特例,以及如何使用TODO和弃用注释。 格式规范部分则非常细致地介绍了代码格式化的要求,如行长度、非ASCII字符的处理、空格与制表位的使用、函数声明与定义、Lambda表达式、函数调用、列表初始化格式、条件语句、循环和开关选择语句、指针和引用表达式、布尔表达式、函数返回值、变量及数组初始化和预处理指令的格式化。 此外,规范也包括类格式、初始化列表、命名空间格式化以及平留白和垂直留白的使用。 规范还讨论了规则特例,比如现有不合规范的代码如何处理,以及在Windows平台上的特殊规则。 结束语部分提醒了遵守规范的重要性,并强调遵循一致性的原则。整个规范的目的是通过统一的代码风格,提高代码的可读性和可维护性,减少代码中的错误和bug。规范还指出,尽管在某些特定情况下可能会有充分的理由去改变某些编程风格,但应该尽量避免这样做,以保持代码的一致性和可预测性。 这份文档的整理,能够为读者节省大量的整理时间,方便学习和应用Google的C++编码规范,提高个人和团队的编程效率。





剩余86页未读,继续阅读













- 粉丝: 59
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 2019年网络销售年终工作总结.doc
- TCL全数字智能家居系统介绍(着重与模拟的对比).pptx
- 2019年网络编辑年终个人总结范文.doc
- IBM-Rational软件测试工具实验报告(完整版).docx
- 2023年江苏省职称计算机应用能力考核理论题.doc
- 2023年信息奥赛题库编程基础之算术表达式与顺序执行.doc
- 通信网基础ch023PPT课件.ppt
- 设计一个完整的数据通信系统 数据通信课程设计.doc
- HL001-网络基础知识.pptx
- VF常见20道编程题.doc
- (完整word版)基于Linux的设备分配及磁盘调度算法说明书.doc
- JavaScript中用let语句声明作用域的用法讲解.doc
- EICAD进行路线设计流程.doc
- 北京理工大学2021年9月《ASP作业考核试题及答案参考.NET开发技术》11.docx
- 电气工程及其自动化.doc
- 2023年职称计算机试题.doc



评论9