16/02/17 12:36:46.43 ofvCQlRl.net
>>309
f(a, b, c);
って書いたとする。普通の関数はCの機能なので、超大雑把に言うと
コンパイル時にアドレスが分かっている関数のアドレスへgotoする機能と、スタックにaとbとcを積む機能、
そして関数から戻った後に実行される命令のアドレスをスタックに積む機能
の組み合わせとして表現されてる。
関数ポインタもCの機能で、固定のアドレスにgotoするか変数に格納されてるアドレスにgotoするかが違う。
で、クラスのメンバ関数呼び出しはCから見たらC++による拡張が入ってて、
o->f(a, b, c);
って書いたとすると、超大雑把に言えば
aとbとcの他にoもスタックに積んでf