请教一个C++问题
程序代码:
#include<iostream> using namespace std; class A { virtual void g() { cout<<"A::g()"<<endl; } virtual void f() { cout<<"A::f()"<<endl; } }; class B : public A { void g() { cout<<"B::g()"<<endl; } /* void f() { cout<<"B::f()"<<endl; } */ virtual void h() { cout<<"B::h()"<<endl; } }; typedef void (*Fun)(); int main() { B b; Fun pFun; for(int i = 0 ; i < 3 ; ++i) { pFun = (Fun)*((int*)*(int*)(&b) + i); pFun(); } }请问一下这个程序,主要是pFun = (Fun)*((int*)*(int*)(&b) + i);
的含义,Thanks