gpt4 book ai didi

c++ - constexpr 默认的默认构造函数

转载 作者:可可西里 更新时间:2023-11-01 18:26:15 26 4
gpt4 key购买 nike

如果我想将我的 default 编辑的默认构造函数声明为 constexpr,我会收到 Clang 3.8 和 GCC 5.3 的编译器错误。根据this stackoverflow 问题它应该可以正常工作:

struct A
{
constexpr A() = default;

int x;
};

但是:

Error: defaulted definition of default constructor is not constexpr

你知道到底发生了什么吗?

最佳答案

就目前而言,x 保持未初始化状态,因此无法在编译时构造对象。

你需要初始化x:

struct A
{
constexpr A() = default;

int x = 1;
};

关于c++ - constexpr 默认的默认构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36392326/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com