月光下的魔术师  2019-05-19 16:39 采纳率: 100%
浏览 595
已采纳

C++虚函数的使用。一个代码

#include <iostream> 
using namespace std;   
class Base{   
public:   
    Base(){}     
    virtual void g(int i=10){
        cout<<"Base::g()"<<i<<endl;
    }  
};   
class Derived : public Base{   
public:   
    Derived(){}
    void g(int i = 20){
        cout<<"Derived::g()"<<i<<endl;
    }
};   
int main()   {   
    Base *pb = new Derived;   
    pb->g();
    return 0;
}  

输出

Derived::g()10

为什么不是Derived::g()20???

  • 写回答

2条回答 默认 最新

  • BuXianShan 2019-05-19 21:20
    关注
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?