【发布时间】:2017-11-26 10:58:10
【问题描述】:
在 Primer 中(在学习 constexpr 时)我发现:
在函数内部定义的变量 通常不会存储在固定地址。因此,我们不能使用 constexpr 指向此类变量的指针
- 它对编译时计算的所有值都有效还是只是使用关键字constexpr的约束?
-
const关键字是否不能确保在编译时确定对象(评估其值),尽管它是由文字初始化的? -
为什么要用
constexpr关键字定义一些引用:int i=9; //Declared as global variable constexpr int &ref=i;
因为constexpr 意味着顶级constness,这意味着ref 将是恒定的(即使不使用constexpr 也是如此,因为我们不能引用任何其他变量)并且它未能提供const 引用的内容?
【问题讨论】:
-
const 根本不能保证太多(因为有
const_cast)