【发布时间】:2020-10-08 04:28:52
【问题描述】:
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() {}
如上面的代码所示,我找不到constinit 和constexpr 之间的任何区别。
constinit 和 constexpr 之间的真正区别是什么?
更新:
相关的What is constinit in C++20?没有明确说明constinit和constexpr的区别。
【问题讨论】:
-
@E_net4thedupefinder,您链接中的答案并没有明确说明
constinit和constexpr之间的区别。 -
是的,确实如此。第一个答案详细说明了
constexpr的含义以及constinit如何不暗示大部分内容。
标签: c++ constexpr semantics c++20 constinit