gpt4 book ai didi

C++ -Weffc++ 警告与指针

转载 作者:行者123 更新时间:2023-11-28 01:25:53 25 4
gpt4 key购买 nike

<分区>

我很难理解这个错误。我正在编译 -Weffc++旗帜。

此结构编译正常。

struct A
{
A(){}
int * first = nullptr;
int second = 0;
};

这不是编译。

struct B
{
B(){}
int * first = nullptr;
std::vector<int> second{};
};

我得到:

prog.cc:14:8: warning: 'struct B' has pointer data members [-Weffc++]
14 | struct B
| ^
prog.cc:14:8: warning: but does not override 'B(const B&)' [-Weffc++]
prog.cc:14:8: warning: or 'operator=(const B&)' [-Weffc++]

但这又可以正常编译了。

struct C
{
int * first;
std::vector<int>& second;
};

为什么我们会收到关于指针的错误(它们在每个结构中)?为什么要添加 std::vector<int>调用错误?我用的是最新的 gcc 9.00C++2a

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