有关虚函数,请教各位
#include<iostream>
#include<string>
using namespace std;
class a
{
public:
virtual void fun(void){cout<<"a.fun()"<<endl;}
};
class b: public a
{
public:
void fun(void){cout<<"b.fun()"<<endl; a::fun();}
};
int main()
{
b temp;
temp.fun ();
return 0;
}
我们知道虚函数的实现是动态绑定,在调用时通过this指针查找虚函数表得到。
问题是,我在b中调用a::fun()时,this指针指向的是b的虚函数表,怎么能够查到a的fun()呢?
希望聆听大家的高见。