using namespace std;
class A{
public:
q();
virtual w(); //virtual是虚函数的标志这里我们用虚函数来实现多态|
}; //|
A::q(){cout<<“qqqqqa”<<endl;}; //| 所以B中的w函数覆盖了A
A::w(){cout<<“wwwwwa”<<endl;}; //| 中的w函数,完全覆盖以至于B
//| 中的w函数可以视为不存在了
class B:public A{ //b公有public继承了a //|
public: //|
q(); //b和a有同名的两个函数,函数名相同但是函数意义不同 //|
w(); //其中的w函数用了虚函数来实现多态——————————————–|
};
B::q(){cout<<“qqqqqqb”<<endl;};
B::w(){cout<<“wwwwwwb”<<endl;};
int main(){
B b;
A a;
A*p=&a;
p->q(); 还是输出基类中的
p->w(); /肯定是输出基类中的 基类指针指向基类
p=&b;
p->q(); ///输出
p->w();
return 0;
}