0
以下のコードスニペットには、継承クラスのCatとDogを持つPetsのクラスがあります。私は私のペットのすべてのセットを持っていると思います。私はオプションBを使用する場合基底クラスと継承クラスのセット
class Pet{
//
};
class Dog: Pet{
//
};
class Cat: Pet{
//
};
int main(
set<Pet> a;
set<Pet*> b;
)
はもちろん、ポインター、犬や猫のいずれかが、セットにすることができますが、私はセットのコピーを作ることができるかどうかはわかりません。
同様に、私がset aのコピーを作成した場合、Cat、Dogのコピーコンストラクタはそれぞれの型の項目に対して呼び出されますか?
ファンタジーコードを投稿しないでください。あなたがセットの宣言に達する前に、これはコンパイルされません。あなたは私的ではない公的継承を望んでいると感じていますか? – user463035818