- 返回引用的函数实际上是被引用的变量的别名
- 右值-不能通过地址访问的值
- 可以定义一个接受基类引用作为参数的函数,调用该函数时,可以将基类对象作为参数,也可以将派生类对象作为参数
- 没有匹配的函数原型会尝试使用标准类型转换强制匹配,若此时有多个匹配或无匹配则会报错
- 类型引用和类型本身视为同一个特征标
- 将非const值赋给const变量是合法的,反之是非法的
- 左值引用参数与可修改的左值参数匹配;const左值引用参数与可修改的左值参数、const左值参数和右值参数匹配;右值引用参数与右值匹配
- 模板不创建任何函数,只是告诉编译器如何定义函数。函数模板不能缩短可执行程序
- 最终代码不包含任何模板,只包含为程序生成的实际函数
- 对于给定的函数名,可以有非模板函数、模板函数和显式具体化模板函数及它们的重载函数
- 显式具体化的原型和定义以template<>打头
- 非函数模板>具体化模板>模板函数
- 显式实例化:用<>符号指示类型,并在声明前加上关键字template
- 在同一个文件中使用同一种类型的显示实例和显示具体化将出错
- c++11 decltype关键字:给decltype提供的参数可以是表达式,用于确定表达式运算后的数据类型
- 后置返回类型函数
auto h(int x,float y) -> double;
c++ primer第8章学习
最新推荐文章于 2024-09-01 16:42:17 发布