版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/z914022466/article/details/73070594
#include <iostream>
using namespace std;
class Base
{
private:
int x;
public:
virtual void mf1()
{
cout<<"Base: mf1()"<<endl;
}
//overload
virtual void mf1(int)
{
cout<<"Base: mf1(int)"<<endl;
}
virtual void mf2()
{
cout<<"Base: mf2()"<<endl;
}
void mf3(double)
{
cout<<"Base: mf3(double)"<<endl;
}
};
class Derived: public Base
{
public:
//override
virtual void mf1()
{
cout<<"Derived: mf1()"<<endl;
}
//redefine
void mf3()
{
cout<<"Derived: mf3()"<<endl;
}
};
int main()
{
Derived d;
int x = 100;
d.mf1();
//d.mf1(x);
d.mf2();
d.mf3();
//d.mf3(x);
}
关于重写的一道思考题,大家可以想一想