トップページ > プログラム > 2014年06月17日 > jLYVWX8U

書き込み順位&時間帯一覧

36 位/245 ID中時間01234567891011121314151617181920212223Total
書き込み数0010000010000000000000002



使用した名前一覧書き込んだスレッド一覧
デフォルトの名無しさん
227
スレを勃てるまでもないC/C++の質問はここで 22

書き込みレス一覧

スレを勃てるまでもないC/C++の質問はここで 22
227 :デフォルトの名無しさん[]:2014/06/17(火) 02:48:13.60 ID:jLYVWX8U
>>225
コメントは基底クラスTESTだと思います。
オブジェクトの型については>>226が書かれたようにnewした方の型なので
・test[0] : TEST型
・test[1] : SUPER型の内、TEST型で定義の範囲だけ
をポインタから扱えるのだと思います。
TEST型なのにSUPER型の関数が呼ばれるのは仮想関数テーブル(VMT)の為で、
virtual がつくとoutput関数はVMTを介して呼び出されるので
・TESTクラスのコンストラクタ実行時->VMTにはTEST::output()へのアドレス
・SUPERクラスのコンストラクタ実行時->VMTにはSUPER::output()へのアドレス
へ書き換えられた為だと思います。
http://codepad.org/CKXyaOCe
自分の解釈だけで書いたので、詳しい方、訂正お願いします。
スレを勃てるまでもないC/C++の質問はここで 22
229 :227[]:2014/06/17(火) 08:50:38.31 ID:jLYVWX8U
>>228
あ、ほんとだ。言われるまで気づきませんでした。
ありがとうごさいます。


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。