C++中const 和 constexpr 之间的区别

最主要的区别在,get

const 所定义的变量,一经初始化便不能修改,可是不要求const所定义变量在编译的时候就能被算出。io

constexpr 定义的变量要求,变量在程序被编译的时候就能被断定为常量,不然出错。编译

总结来讲,constexpr 定义的变量“常量的属性” 比const 所定义的变量更完全(这是我本身的语言)变量

还有知乎上某网友总结:const 就像readonly,constexpr 是一直为常量。程序

更详细的区别请移步 Stackoverflow 问答总结