重複の可能性:
なぜ仮想テーブルが必要なのですか?
C ++のvtableとは何ですか?
これまでのところ、vtableは仮想関数へのポインターの配列を持つ仮想テーブルであることを知っています。実際の実装例で読める記事はありますか?(どんなウォークスルーでもありがたいです。)
重複の可能性:
なぜ仮想テーブルが必要なのですか?
C ++のvtableとは何ですか?
これまでのところ、vtableは仮想関数へのポインターの配列を持つ仮想テーブルであることを知っています。実際の実装例で読める記事はありますか?(どんなウォークスルーでもありがたいです。)
V テーブル (または仮想テーブル) は、ほとんどの C++ 実装でポリモーフィズムを行う方法です。クラスの具体的な実装ごとに、すべての仮想メソッドへの関数ポインタのテーブルがあります。このテーブル (仮想テーブルと呼ばれる) へのポインターは、すべてのオブジェクトにデータ メンバーとして存在します。仮想メソッドを呼び出すときは、オブジェクトの v テーブルを検索し、適切な派生クラス メソッドを呼び出します。
vTable (仮想テーブル) は、動的ディスパッチ (virtual
メソッド ) の実装の詳細です。
詳細については、 C++-Lite- FAQ を参照してください。
なんと言っても、これは標準の C++ 用語ではありません。仮想関数/動的バインディングを実装するために実装によって使用される単なる実装の詳細です