私はC++と仮想継承、特にベースクラスと子クラスの間でvtableの競合が解決される方法に興味がありました。それらがどのように機能するかについての詳細を理解するふりをするつもりはありませんが、これまで私が輝いていたのは、それらがその解像度による仮想関数の使用によって引き起こされる小さな遅延であるということです。私の質問は、基本クラスが空白であるかどうかです。つまり、その仮想関数は次のように定義されます。
virtual void doStuff() = 0;
これは、選択できる関数のセットが1つしかないため、解像度が不要であることを意味しますか?
これがばかげた質問である場合は、私を許してください-私が言ったように、私はvtablesがどのように機能するかを理解していないので、私は本当にこれ以上よくわかりません。
編集
したがって、2つの別個の子クラスを持つ抽象クラスがある場合:
A
/ \
/ \
B C
子クラスから関数を呼び出すときに、単一の継承のないクラスと比較して、パフォーマンスへの影響はありませんか?