关于虚函数的代码执行的困惑
梦断酒醒 2010-05-16 12:04:18 以下代码输出的结果为什么是“Derived::g() 10”?
class Base
{
public:
virtual void g(int i = 10)
{
cout << i << endl;
}
};
class Derived: public Base
{
public:
void g(int i = 20)
{
cout << "Derived::g() " << i << endl;
}
};
int main(int argc, _TCHAR* argv[])
{
Base* pb = new Derived;
pb->g ();
return 0;
}