C++编程高质量指南:编码风格与实践

需积分: 0 3 下载量 136 浏览量 更新于2024-08-02 收藏 613KB PDF 举报
《高质量C++/C编程指南》是一本由林锐博士编写的权威参考书籍,旨在提供一套严谨且实用的编程实践准则,帮助程序员提升代码质量。该书主要关注C++和C语言的编程风格、习惯以及最佳实践。以下是部分章节的主要知识点: 1. **文件结构**:书中强调了版权和版本声明的重要性,以及头文件的组织结构,包括如何定义文件结构和头文件的作用。此外,还推荐了一种清晰的目录结构,以便于代码的管理和查找。 2. **程序版式**:作者指导读者在编写代码时应注意空行的使用、代码行长度、空格的规范、对齐规则、长行拆分以及不同类型的注释的正确运用。对于类的设计,也有详细的版式指导。 3. **命名规则**:涵盖了通用编程规则,以及针对Windows和UNIX环境下的应用程序命名策略,强调了命名的一致性和可读性。 4. **表达式与基本语句**:这部分介绍了运算符优先级、复合表达式的理解、IF语句和循环语句(如FOR和SWITCH)的高效用法,还特别提到了对GOTO语句的谨慎使用。 5. **常量**:解释了常量在编程中的必要性,讨论了CONST和DEFINE的区别,并给出常量定义的规则,同时涵盖了类中的常量定义。 6. **函数设计**:详细讲解了参数的传递规则、返回值的处理、函数内部实现的注意事项,还推荐使用断言来增强代码的健壮性,以及引用和指针的区别。 7. **内存管理**:深入探讨了内存分配的方式,常见错误的预防措施,指针与数组的对比,以及动态内存分配和释放操作的正确使用,如MALLOC/FREE与NEW/DELETE的关系,以及如何避免“野指针”。 8. **内存耗尽处理**:讨论了在内存资源紧张的情况下如何有效地管理内存,确保程序的稳定运行。 这本书不仅提供了编程技巧,还包含了对编程规范和性能优化的深度分析,适合C++/C语言开发者作为提高代码质量和编程效率的参考手册。通过遵循这些指南,程序员能够提升代码的可读性、可维护性和可靠性。
2013-05-02 上传
前 言 6 第1章 文件结构 11 1.1 版权和版本的声明 11 1.2 头文件的结构 12 1.3 定义文件的结构 13 1.4 头文件的作用 13 1.5 目录结构 14 第2章 程序的版式 15 2.1 空行 15 2.2 代码行 16 2.3 代码行内的空格 17 2.4 对齐 18 2.5 长行拆分 19 2.6 修饰符的位置 19 2.7 注释 20 2.8 类的版式 21 第3章 命名规则 22 3.1 共性规则 22 3.2 简单的WINDOWS应用程序命名规则 23 3.3 简单的UNIX应用程序命名规则 25 第4章 表达式和基本语句 26 4.1 运算符的优先级 26 4.2 复合表达式 27 4.3 IF 语句 27 4.4 循环语句的效率 29 4.5 FOR 语句的循环控制变量 30 4.6 SWITCH语句 30 4.7 GOTO语句 31 第5章 常量 33 5.1 为什么需要常量 33 5.2 CONST 与 #DEFINE的比较 33 5.3 常量定义规则 33 5.4 类中的常量 34 第6章 函数设计 36 6.1 参数的规则 36 6.2 返回值的规则 37 6.3 函数内部实现的规则 39 6.4 其它建议 40 6.5 使用断言 41 6.6 引用与指针的比较 42 第7章 内存管理 44 7.1内存分配方式 44 7.2常见的内存错误及其对策 44 7.3指针与数组的对比 45 7.4指针参数是如何传递内存的? 47 7.5 FREE和DELETE把指针怎么啦? 50 7.6 动态内存会被自动释放吗? 50 7.7 杜绝“野指针” 51 7.8 有了MALLOC/FREE为什么还要NEW/DELETE ? 52 7.9 内存耗尽怎么办? 53 7.10 MALLOC/FREE 的使用要点 54 7.11 NEW/DELETE 的使用要点 55 7.12 一些心得体会 56 第8章 C++函数的高级特性 57 8.1 函数重载的概念 57 8.2 成员函数的重载、覆盖与隐藏 60 8.3 参数的缺省值 63 8.4 运算符重载 64 8.5 函数内联 65 8.6 一些心得体会 68 第9章 类的构造函数、析构函数与赋值函数 69 9.1 构造函数与析构函数的起源 69 9.2 构造函数的初始化表 70 9.3 构造和析构的次序 72 9.4 示例:类STRING的构造函数与析构函数 72 9.5 不要轻视拷贝构造函数与赋值函数 73 9.6 示例:类STRING的拷贝构造函数与赋值函数 73 9.7 偷懒的办法处理拷贝构造函数与赋值函数 75 9.8 如何在派生类中实现类的基本函数 75 9.9 一些心得体会 77 第10章 类的继承与组合 78 10.1 继承 78 10.2 组合 80 第11章 其它编程经验 82 11.1 使用CONST提高函数的健壮性 82 11.2 提高程序的效率 84 11.3 一些有益的建议 85 参考文献 87 附录A :C++/C代码审查表 88 附录B :C++/C试题 93 附录C :C++/C试题的答案与评分标准 97