C++ constexpr
constexpr
当使用 constexpr
声明一个对象或函数时,意味着它的值或结果可以在编译时计算,而不是在运行时。这允许进行性能优化,并使得常量可以在需要编译时值的上下文中使用。
1 | constexpr int mf = 20; // 20 is a constant expression |
constexpr
对象和函数隐式地是 const
的
constexpr 函数
constexpr
函数必须有返回值,返回类型必须是字面类型(算术类型,引用,指针等)
1 | constexpr size_t scale(size_t cnt) { return new_sz() * cnt; } |
假如 scale
函数传入的是 const
类型,那么返回的就是 const
表达式,否则就不是
1 | // 举个例子 |
All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.