[C++ Primer Plus]第八章

1.编译器将内联函数代码替换函数调用,函数声明和定义之前加关键字inline,内联函数不能递归
2.引用是已定义变量的别名,引用变量主要是用作函数的参数,函数将使用参数原始版本而不是副本,必须在声明引用变量时将其初始化,一旦初始化完成,将不能再成为其他变量的引用
3.想使用引用,又不想修改变量的值,可以使用const int &a
4.如果函数实参与引用参数不匹配,仅当参数为const引用时,C++将生成临时变量,使该引用指向临时变量,生成临时变量的情况
1)实参类型正确,但不是左值
2)实参类型不正确,但可以转换为正确的类型
5.将引用用于结构,可以节省内存和时间
6.基类引用可以指向派生类对象,而无需进行强制类型转换
7.对于类,参数一般使用引用而不使用指针
8.默认参数是指函数调用中省略了实参时自动使用的一个值,默认参数通过函数原型来设置,要为某个参数设置默认值,则其右边所有的参数都必须设置默认值
9.函数多态(重载)能够使用多个同名的函数(条件是两个函数的特征标不一致),参数数目和类型相同,同时参数的排列顺序也相同,则特征标一致,类型引用与类型本身为同一个特征标
10.如果需要将同一种算法用于不同类型的函数,可以使用模板,最终生成的代码不包含任何模板,只包含了为程序生成的实际函数,可能有多个独立的函数定义
11.模板可以重载,模板可以显示具体化,非模板函数优先具体化和常规模板,具体化优于常规模板

猜你喜欢

转载自openwrt.iteye.com/blog/2228947
今日推荐