c++で派生クラスのオブジェクトを宣言するときに、基底クラスのほうで定義してあるコンストラクタの呼び出し方
Posted: 2012年7月02日(月) 15:28
class base{
protected:
int bas;
public:
base(int a){ bas = a;};
};
class sub : base{
};
int main()
{
sub s(1);
return 0;
}
実行しようとすると、
> 1 番目の引数を 'int' から 'const sub &' に変換できません。
>理由: 'int' から 'const sub' へは変換できません。
>コンストラクターはソース型を持てません、またはコンストラクターのオーバーロードの解決があいまいです。
と出てきて、実行できませんでした。派生クラスのインスタンスでは基底クラスのコンストラクタを呼べないのでしょうか?
理由と解決策を教えて下さい。