《高质量C++/C编程指南》——林锐博士

需积分: 0 3 下载量 90 浏览量 更新于2024-08-01 收藏 656KB DOC 举报
“高质量C++.doc”是一份由林锐博士编写的C++编程指南,旨在提升C++编程的质量。这份文档覆盖了多个关键主题,包括文件结构、程序版式、命名规则、表达式和基本语句、常量、函数设计、内存管理和C++的高级特性如函数重载。 在C++中,指针和引用是两种重要的参数传递方式。在“指针传递”的示例中,`Func2`函数接收一个指向整型变量的指针`int *x`,通过指针修改了外部变量`n`的值。在函数体内,`(*x) = (*x) + 10;`这一行代码将指针`x`所指向的值增加了10,导致`n`的值变为10。指针允许我们间接修改函数外部的变量,但需要注意的是,如果不当使用可能会引发内存问题,例如“野指针”。 另一方面,“引用传递”在`Func3`函数中体现,引用`x`实际上是外部变量`n`的一个别名。因此,任何对`x`的操作都会直接影响`n`。在引用传递中,`x`和`n`是绑定在一起的,改变`x`就是改变`n`,这也是为什么在示例中`n`的值同样变为10。 文档还强调了编程风格的重要性,包括空行的使用、代码行的长度、空格的放置、对齐规则、长行的拆分、修饰符的位置以及注释的编写。良好的代码版式可以提高代码的可读性和可维护性。 命名规则部分,文档介绍了通用规则以及针对Windows和Unix应用程序的特定命名规范。表达式和基本语句章节涉及了运算符优先级、复合表达式、条件语句(if)、循环语句(如for和while)的效率考虑、switch语句和goto语句的使用。 常量部分讲解了常量的必要性,`const`关键字与`#define`预处理器宏的区别,以及如何正确定义和使用常量。函数设计部分涵盖了参数和返回值的设计原则,函数内部实现的注意事项,以及使用断言来增强代码的健壮性。 内存管理是C++编程中的重要话题,文档讨论了内存分配方式,常见的内存错误及避免方法,如内存泄漏和野指针问题。此外,它还比较了指针和数组,解释了指针参数如何传递内存,以及`new`、`delete`、`malloc`、`free`的使用规则和注意事项。 最后,文档提到了C++的高级特性,如函数重载,这是C++多态性的基础之一,允许同名函数根据不同的参数类型或数量有不同的实现。其他高级特性并未在此摘要中详述,但在完整文档中应该有深入的探讨。 “高质量C++”提供了全面的指导,从基础概念到高级特性,帮助程序员写出更高效、更易于理解和维护的C++代码。