auto、头文件防卫、引用、常量
auto、头文件防卫、引用、常量
auto:变量的自动类型推断
auto 可以在声明变量时根据变量初始值的类型自动为此变量选择匹配的类型(声明时要赋予初值)
auto自动类型推断发生在编译期间所以不会造成程序效率降低
头文件防卫式声明
// #ifdef, ifndef 条件编译
// #ifndef 标识符 // 当标识符没有定义过(没有用 #define 定义过),则对程序段进行编译
// 程序段
// #endif
引用
引用理解成:为变量起了另外一个名字,一般用 &符号表。起完别名后,这别名和变量本身我们就看成是同一个变量:
int value = 10;
// 定义引用的时候必须初始化,不然你给谁起别名
int &refVal = value; // value的别名就是 refVal,&在这里不是求地址运算符,只是起标识作用
refVal = 3;
cout << value << endl;
cout << refVal << endl;
实例
void func(int &a, int &b) // 注意:形参是:引用类型
{
ta = 4; // 改变这个会影响外界
tb = 5;
}
常量 Const、ConstExpr
constexpr:C++11 引入,它也是一个常量的概念,在编译的时候求值,肯定能提升性能