1.数组初始化
int a[]{ 1,2,3,4,5 };
2.C++11 auto
auto可以在声明变量的时候根据变量的初始值的类型自动为此变量先择合适的类型,声明时要赋予初值。
auto自动推导发生在编译期间
auto A = 10;//A会被自动推导为int类型
3.头文件防卫式声明
作用:防止头文件重复包含,在编译时起到作用
#ifndef x //先测试x是否被宏定义过
#define x程序段1blabla~ //如果x没有被宏定义过,定义x,并编译程序段 1
#endif 程序段2blabla~ //如果x已经定义过了则编译程序段2的语句,“忽视”程序段 1
4.引用
引用必须绑定到一个变量上不能绑定到常量上,且引用绑定的类型与引用类型必须为同类型。
int a = 10;int &b = a; //引用符号 & 在 = 左边
两个变量同时指向同一块内存地址。但是双方实质上并非如此。相关参考
引用可以作为函数的参数用来直接修改实参,其作用与传递指针类似
void swapOne(int &a, int &b)
{a = a ^ b;b = a ^ b;a = a ^ b;
}
5.常量
const ,表示不变的意思,例如const int a =100 ; 其变量a存储在内存常量区,不会被其他对象修改。
constexpr C++11引入,在编译的时候求值。可以提升性能,且constexpr必定为常量。