1
我对Weffc++
警告有一个理解问题。GCC -WeffC++警告
main.cpp中:在构造 'B :: B()': main.cpp中:13:1:警告: 'B ::一个' 应该在成员初始化列表被初始化[-WeffC++] B(){} ^
#include <iostream>
class A
{
public:
A() {}
~A() {}
void test() { std::cout << "Hello world\n"; }
};
class B
{
public:
B() {}
~B() {}
A a;
};
int main()
{
B b;
b.a.test();
return 1;
}
如果我写,或使用初始化列表我没有问题。
A a = {};
我以为默认的构造函数会自动调用吗?为什么我必须明确地使用他?