继承
语法:class 子类:继承方式 父类
如果子类中出现和父类同名的成员函数,子类中的同名成员会隐藏掉父类中所有同名成员函数,如果想访问父类中被隐藏的同名成员函数,需要加作用域。
动态多态满足条件:
1、有继承关系
2、子类重写父类的虚函数
动态多态使用
父类的指针或者引用 执行子类对象
#include
#include
using namespace std;
class AbstractCalculator
{
public:
virtual int getResult(){
return 0;
}
int m_Num1;
int m_Num2;
};
//加计算器
class Addcalculator:public AbstractCalculator{
public:
int getResult(){
return m_Num1+m_Num2;
}
};
class Subcalculator:public AbstractCalculator{
public:
int getResult(){
return m_Num1-m_Num2;
}
};
void test(){
AbstractCalculator *abc=new Addcalculator;
abc->m_Num1=10;
abc->m_Num2=20;
cout<getResult()<<endl;
delete abc;
}
int main(){
test();
system(“pause”);
return 0;
}