次のコードがあります。
class A {
public:
A() { }
};
class B {
private:
const A &a;
public:
B() : a() { }
B(const A &ina) : a(ina) { }
};
コンパイルすると、次のようになります。
ab.cpp: コンストラクター 'B::B()':
ab.cpp:11: 警告: 参照型を持つ「const A& B::a」のデフォルト初期化
これにより警告が表示されるのはなぜですか? また、どのように修正すればよいですか?