私がg ++ 4.1.2を使用して、次のコードをコンパイルすることはできません。参照引数を受け取る基本クラスを作成するにはどうすればよいですか?
#include <memory>
class A
{
public:
};
std::auto_ptr<A> GetA()
{
return std::auto_ptr<A>(new A);
}
class B
{
B(std::auto_ptr<A>& pA)
{
}
};
class C : public B
{
C() : B(GetA())
{
}
};
私が取得:タイプstd::auto_ptr<A>
の右辺値式の
無効なキャストを
std::auto_ptr<A>&
を入力します問題は、初期化リストの中にあるため、変数を定義してその参照を渡すことができないことです。
クラスC
の変更のみが許可されている場合、どうすればいいですか?
ありがとう、それは私のために働いた:-) – user1194529