xml*_*lmx 4 c++ constexpr semantics c++20 constinit
constexpr int f() { return 0; }
int g() { return 0; }
constexpr auto c1 = f(); // OK
constinit auto c2 = f(); // OK
constexpr auto d1 = g(); // ill-formed
constinit auto d2 = g(); // ill-formed
int main() {}
Run Code Online (Sandbox Code Playgroud)
如上面的代码所示,我找不到constinit和之间的任何区别constexpr。
constinit和之间的真正区别是constexpr什么?
更新:
有关什么是constinit用C ++ 20?没有明确规定之间的差异constinit和constexpr。
甲constinit变量是恒定初始化,但它不是在一个常量表达式可用,甚至也不自动恒定。您main可以合法地包含此行
c2 = 2;
Run Code Online (Sandbox Code Playgroud)
是的,初始化后可以修改。
| 归档时间: |
|
| 查看次数: |
149 次 |
| 最近记录: |