多态满足的条件:
1、有继承关系
2、子类重写父类中的虚函数
重写 函数返回值类型 函数名 参数列表 完全相同
多态的使用 父类指针或引用指向子类对象
父类添加virtual关键字后变成虚函数
#include<iostream>
using namespace std;
class animal
{
public:
//加上virtual关键字,变成虚函数
virtual void shuchu()
{
cout << "动物类" << endl;
}
int m_age;
};
class cat :public animal
{
public:
void shuchu()
{
cout << "猫类" << endl;
}
};
class dog :public animal
{
public:
void shuchu()
{
cout << "狗类" << endl;
}
};
void hui(animal& dongwu)
{
dongwu.shuchu();
}
void test()
{
cat mao1;
hui(mao1);
dog gou1;
hui(gou1);
}
int main()
{
test();
system("pause");
return 0;
}