0
キャストダウン中に静的にキャストすると、オブジェクトのスライスにつながりますか?以下のように。C++でのキャスト中のオブジェクトのスライス
class Parent{ // base class
public:
virtual void draw();
};
class Child: public Parent{ //derived class
public:
void draw()
{
static_cast<Parent>(*this).draw();
// do other stuff
}
};
あなたは' dynamic_castを(これ)をお探しですか?この場合、[非仮想インターフェイスイディオム](https://en.wikibooks.org/wiki/More_C%2B%2B_Idioms/Non-Virtual_Interface)(Effective C++のItem 34も同様)を適用することができます。 –
暗黙のアップキャスト(Parent :: draw())を実行すると、問題が解決しました。 –
暗黙のアップキャストではなく、どんな種類のキャストでもありません。あなたはそれを完全修飾名で呼ぶだけです。 – StoryTeller