edit :baseObject構造をコピーします。
のデフォルトのコンストラクターを定義していないためbaseObject、コンパイラーは、使用するコンストラクターをderivedObject明示的に指定しないと を構築できませんbaseObject。
の定義では、コンストラクタderivedConstructorを正確に指定する必要があります。baseObject私はあなたがどのようにbaseObject見えるか分からないので、以下のプレースホルダーを使用しました:
derivedObject(const baseObject &base, const std::string &extra1)
: baseObject(PARAM1, PARAM2)
{
baseparameter1 = base.baseparameter1;
baseparameter2 = base.baseparameter2;
extraparameter1 = extra1;
}
特定のケースで、既に存在するaderivedObjectから aを作成しようとしている場合は、のコピー コンストラクターを定義し、次のようにする必要があります。baseObjectbaseObject
derivedObject(const baseObject &base, const std::string &extra1)
: baseObject(base)
{
baseparameter1 = base.baseparameter1;
baseparameter2 = base.baseparameter2;
extraparameter1 = extra1;
}