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を作成しようとしている場合は、のコピー コンストラクターを定義し、次のようにする必要があります。baseObject
baseObject
derivedObject(const baseObject &base, const std::string &extra1)
: baseObject(base)
{
baseparameter1 = base.baseparameter1;
baseparameter2 = base.baseparameter2;
extraparameter1 = extra1;
}