执行结果是1112;为什么执行show(b)的结果不是2呢 而执行display(b)的结果是2呢
#include<iostream>
using namespace std;
class GA{
public:
virtual int f(){return 1;
}
};
class GB:public GA{
public:
virtual int f(){
return 2; }
};
void show(GA g){cout<<g.f();
}
void display(GA &g){cout<<g.f();
}
int main(void){
GA a;
GB b;
show(a);
display(a);
show(b);
display(b);
system("pause");
return 0;
}