トップページ > コンテンツ > プログラミング入門 > C++入門 > 仮想関数の必要性

仮にsomefunction()というユーザ定義関数を持つ
基本クラスSomeBaseと派出クラスSomeA,SomeB,SomeCクラスがあったとする。
派出クラスでオーバライドすることで、同じ関数名でも色々な使い方ができるのは
ポリモーフィズムと呼ばれるオブジェクト指向言語では多用する方法である。

そこで、
int main(){
 //SomeBaseクラスのインスタンスを通じての実行
 SomeBase k; //SomeBaseクラスのオブジェクト
 k.somefunction(); //SomeBaseクラスの関数実行
 
 SomeA j;
 j.somefunction(); //SomeAクラスでオーバライドした関数の実行
}
といった形での実行を行うことができる。


最終更新:2011年04月03日 11:20