【C++11之常量表达式】
关键字:constexpr; 中文学名:常量表达式。
constexpr用于把运行期计算放置在编译期。
使用constexpr有3个限制:
1、函数中只能有一个return语句(有极少特例)
2、只能调用其它constexpr函数
3、只能使用全局constexpr变量
一个constexpr函数,只允许包含一行可执行代码。但允许包含typedefs、 using declaration && directives、静态断言等。
假如你将一个成员函数标记为constexpr,则顺带也将它标记为了const。如果你将一个变量标记为constexpr,则同样它是const的。但相反并不成立,一个const的变量或函数,并不是constexpr的。
用例:
参考: