最主要的区别在,get
const 所定义的变量,一经初始化便不能修改,可是不要求const所定义变量在编译的时候就能被算出。io
constexpr 定义的变量要求,变量在程序被编译的时候就能被断定为常量,不然出错。编译
总结来讲,constexpr 定义的变量“常量的属性” 比const 所定义的变量更完全(这是我本身的语言)变量
还有知乎上某网友总结:const 就像readonly,constexpr 是一直为常量。程序
更详细的区别请移步 Stackoverflow 问答总结