- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
<分区>
我很难理解这个错误。我正在编译 -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.00
和 C++2a
这个问题在这里已经有了答案: Understanding -Weffc++ (3 个答案) 关闭 4 年前。 我很难理解这个错误。我正在编译 -Weffc++旗帜。 此结构编译正常。 struct
考虑以下程序: #include struct S { S (){} private: void *ptr = nullptr; std::string str = "";
我对 Weffc++ 警告有理解上的问题。 main.cpp: In constructor ‘B::B()’: main.cpp:13:1: warning: ‘B::a’ should be in
我有一个名为 Coord 的类...它有实例数据 x、y。我想重写 * 运算符,以便 * 运算符可用于将 Coord 乘以整数或 double 值!这是我提出的解决方案: Coord& Coord::
我有一些代码 here我正在使用 -Weffc++ -Wall -Wextra 进行编译。 基本上我有这个片段: class base {}; class test : public base { p
我尝试用 std::shared_ptr 编译非常简单的树节点。在我的编译器选项中,我使用了 -Weffc++ 和 -Werror 但它抛出了 2 个我不理解的错误,因此我无法想象解决方案。 最小示例
我收到 -Weffc++ 发出的警告,这似乎是错误的。我可以用第二双眼睛来确认: template class CLASS_TYPE, typename T> class some_class { t
我对一个分为不同子项目的大型项目使用 boost build。这里是 jamroot 文件: project : requirements debug:DEBUG releas
我有一个使用很多很多库的大项目。其中一些是 HDF5、PugiXML、Boost.ASIO、Qt、MuParser 等等。这些库有的是header包含的,有的是预编译的,有的是我自己编译的。我想使用
假设我有这样一个类: class MyClass { private: vector myMember; public: MyClass(const Y
我想知道,-Weffc++ 标志是否有等效的 MSVC(++)?它是几号? 我在 MS website 上的编译器警告/错误列表中没有看到类似的内容. 最佳答案 没有任何等价物。 Visual C++
struct Bar { Bar() {} }; struct Foo { Foo() = default; Bar m_bar; }; int main() { Fo
这是一个重载的||在我的类中定义的运算符: bool operator|| (const MyClass& v) const { return ......; //some calculat
我是一名优秀的程序员,十分优秀!