constexpr初始化全局变量

时间:2019-03-11 13:25:08

标签: c++ constexpr

如果我有一个用存储声明的变量,即int x;并通过调用constexpr函数对其进行初始化,使其具有在main中的任何代码开始执行之前确定的值。

constexpr int get_value() { return 5;}

int x = get_value();

int main() {
   return x;
};

1 个答案:

答案 0 :(得分:1)

在C ++ 20中,您为此拥有constinit

constexpr int get_value() { return 5;}

// Still mutable, not constexpr but
// initialized with a value at compile time.
constinit int x = get_value();

int main() {
   return x;
};