写出以下程序的输出结果:
#include class A
5

{
virtual void g()
{
cout << "A::g" << endl;} private:virtual void f() {cout << "A::f" << endl; }};class B : public A {void g() {cout << "B::g" << endl; }virtual void h() {cout << "B::h" << endl; }};typedef void( *Fun )( void ); void main(){B b;Fun pFun;for(int i = 0 ; i < 3; i++) {pFun = ( Fun )*( ( int* ) * ( int* )( &b ) + i );pFun(); }}输出结果:注意:本题主要考察了面试者对虚函数的理解程度。一个对虚函数不了解的人很难正确的做出本题。 在学习面向对象的多态性时一定要深刻理解虚函数表的工作原理。



