【发布时间】:2012-11-01 01:31:31
【问题描述】:
以下定义有区别吗?
const double PI = 3.141592653589793;
constexpr double PI = 3.141592653589793;
如果不是,C++11 中首选哪种风格?
【问题讨论】:
-
两者都是编译时常量。但是您可以对第一个进行 const_cast 并写入它。但它会被任何编译器优化掉,因为这不会影响编译时发生的“读取”。
标签: c++ variables c++11 constants constexpr