C++11常用特性介绍——constexpr变量
一、constexpr变量
1)将变量声明为constexpr类型以便由编译器来验证变量的值是否为一个常量表达式,声明为constexpr的变量一定是一个常量,而且必须用常量表达式来初始化,如:
int a = 10;
constexpr b = a + 10;//错误,需要将a声明为const int常量。
2)const与constexpr之间的区别
a)const所定义的变量,一经初始化便不能修改,但是不要求const所定义变量在编译的时候就能被算出。
b)constexpr定义的变量要求,变量在程序被编译的时候就能被判定为常量,否则报错。