次のコードを検討してください。
class Foo {
Foo() {}
};
class Bar {
Foo &Foo_ref;
Bar() : Foo_ref() {}
};
そのままコンパイルすると、次のエラーが表示されます。
tmp.cc: コンストラクター Bar::Bar() 内: tmp.cc:7: エラー: 参照型を持つ Foo& Bar::Foo_ref の値の初期化
考えられるあらゆるバリエーションを試しました。私は何を間違っていますか?参照メンバーを新しいインスタンスに初期化するにはどうすればよいですか? 今のところ、回避策として参照の代わりに const ポインターを使用していますが、参照を使用することをお勧めします。