// 2021.4.2(类的多态).cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include <windows.h>
#include <iostream>
using namespace std;
class CAnimal
{
public:
CAnimal(){}
~CAnimal(){}
//虚函数
virtual void cry(){
cout << "Animal cry!" << endl;
}
protected:
int m_nLegs;
int m_nAge;
};
class CCat : public CAnimal
{
public:
CCat(){}
~CCat(){}
virtual void cry(){
cout << "Cat cry" << endl;
}
};
int _tmain(int argc, _TCHAR* argv[])
{
//类的多态性
//没加virtual,指针是什么类型,就执行什么类型的函数
//加了virtual,new出来的对象是什么类型,就执行什么类型的函数
CCat* pCat = new CCat();
pCat->cry();
//可以使用基类的指针类型来存放子类的对象
CAnimal* pCat1 = new CCat();
pCat1->cry();
//
system("pause");
return 0;
}
【C++知识点】类的多态
最新推荐文章于 2024-09-29 19:25:52 发布