仮想関数のインライン化
『新訂版 More Effective C++』
- 項目 24:仮想関数、多重継承、仮想基底クラスと実行時型識別のコストを理解する -
各クラスの仮想関数テーブルは、
そのクラス内の最初の非インラインで
非純粋な仮想関数の定義を含んでいる
オブジェクトファイルに生成される。クラス内の仮想関数がすべてインラインである場合は、
仮想関数テーブルとすべての仮想関数本体が、
クラスを使用する全てのオブジェクトファイルに生成されます。
最近のコンパイラは対策してあるらしい
そもそも仮想関数はインライン化されないような・・・