默认参
l 允许多个默认参
l 从右向左给默认参数,不间断
l 默认参只能放到声明或者定义中
l c++ 允许给函数形参提供默认实参,当此参数没有指定实参的时候,使用默认实参;如果指定了实参, 则使用指定的实参 语法,形参后跟 = 默认实参
引用
l c++ 允许定义一个引用变量,这个引用变量和一个已经存在的变量绑定在一起,操作引用变量相当 于操作被绑定的变量.
l 引用本质上是个常量指针
l 引用关系一旦建立,不能改变
l 引用必须初始化,不能使用 nullptr 或者常量初始化
l 常量引用可以使用常量初始化 const int& nConstRef = 5;
l 不存在二级引用
l 数组引用
l char aryTest[5] = {}; char (&aryTestRef)[5] = aryTest; aryTestRef[0] = 5;
l 不要返回局部变量的引用
内联
l 内联允许函数像宏一样在调用点展开 debug版没有内联,为了方便调试
l 编译器选项,内联函数扩展 ob1 - 只适用__inline,如果函数没有加 inline 关键字,则函数不会内联;否则,尝试对函数进行内联
l ob2 - 任何使用项, 不管函数有没有 inline 关键字,都会对函数尝试内联 内联函数的实现必须放到头文件中 inline 对于编译器是个建议,编译器不一定会内联,一般情况下,简单函数会内联,复杂函数不会内联