第二章 小 结
(1) C++的常量和变量都具有数据类型,包括基本数据类型和复杂数据类型,还有标准类库中和用户定义的 class 类型,统称为“类型” 。实际编程时,应尽量使用 const 替代#define 定义符号常量
。
(2) C++的指针分为常量指针和指针变量,C++也完全保留了 C 语言指针变量的一些特性。编程时应特别注意两个同类型指针指向内存中同一个地址位置的“别名”问题。
(3) 引用是 C++新增加的数据类型,它是被引用变量的一个替换名,主要用于调用函数时传递参数和返回值,由于它是采用地址传递方式,因此引用完全可以取代指针完成函数间信息的双向传递,而在
书写格式上却更简洁方便。与传值调用方式相比较,它不需要为实参复制副本,节省了时间和空间的开销,而在书写上惟一的区别是把形参指定为引用,由于引用与被引用变量间是通过地址相联系的,
也可以说,引用是存放变量或某类对象内存空间地址的另一种更高级的表示形式。
(4) C++用新增加的一对运算符new和 delete实现动态存储技术,可完全取代 C 语言标准库函数 malloc( )和 free( ),且用法更灵活方便,更重要的是能用来创建和撤销class类型的动态对象, 实际
编程时, 应尽量采用运算符new和delete取代malloc( )和 free( )函数。
(5) C++允许把频繁调用的小代码函数指定为内联函数,以提高执行速度,但这是用空间(程序容量)来换取时间(执行速度)。 实际编程时,应尽量采用内联函数取代用#define语句定义的带参数宏指
令。
(6) C++允许在同一个作用域内,一个函数名可以有多个不同的函数体,即可以定义一个函数的多个不同实现版本。这是简化程序设计的一种多态性形式。
评论