alignof
获取类型或变量的当前对齐方式
cout <<"alignof xx = "<< alignof(char)<< endl;
alignas
注意只能往大了对齐,比如int类型不能按2字节对齐
alignas(16) int a;//以16字节对齐int类型
typeid
获取当前变量的类型
signed char c;
cout << "typeid is "<<typeid(c).name()<<endl;//结果 typeid is a
nullptr
简单来说是代替C中的NULL的作用,因为在C++中使用NULL有歧义。
auto
auto在C在修饰局部变量,可以忽略,在C++中是一个新的关键字
其作用是由编译器自动推导出变量类型
auto i = 8;
cout <<"typeid of i is "<<typeid(i).name()<<endl;
结果是:
typeid of i is i
decltype
int a = 9;
decltype(a) b ;//b的类型为int
作用和auto类似,区别是:
- auto忽