【初心者歓迎】C/C++室 Ver.72【環境依存OK】at TECH【初心者歓迎】C/C++室 Ver.72【環境依存OK】 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト500:デフォルトの名無しさん 10/04/25 19:32:40 virtualメソッドに実行時コストがあるのは関数ポインタ経由してるから、とかるんですが virtual継承にも実行時コストがあるのはなぜ何ですか? コンパイル時に解決出来そうな気がするんですが 501:477 10/04/25 19:56:38 >>486 誘導ありがとうございます。 行って参ります。 502:デフォルトの名無しさん 10/04/25 23:07:04 >>500 解決できそう? #include <iostream> #include <vector> class Animal { public: virtual void bark() { }; }; class Dog : public virtual Animal { public: virtual void bark() { std::cout << "bow wow" << std::endl; } }; class Cat : public virtual Dog { public: virtual void bark() { std::cout << "meaow" << std::endl; } }; int main() { std::vector<Animal*> animal; animal.push_back(new Dog()); animal.push_back(new Cat()); animal[0]->bark(); // Dog animal[1]->bark(); // Cat } 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch