多态性和虚函数

多态和虚函数

  • 什么是多态性

如果一种语言只有类,没有多态,是不能称为面向对现象语言
如果一种语言只支持类概念,那么只能称为使用/基于对象的语言


面向对象编程的多态性包括:

  • 向不同的对象发送同一条消息(消息就是函数调用)
  • 不同的对象在接收时候会产生不同的心行为(执行不同的函数)
  • 函数名相同,执行的动作不一样

静态多态:函数重载
动态多态:函数重写


  • c++函数重写,必须先把父类的成员函数设定为虚函数
  • 虚函数:virtual 返回值 函数名();
class Hero
{
	protected:
	//省略基类属性
	public:
		virtual void Move(); //基类方法前加上virtual  表示函数重写
};
class Warrior:public Hero
{
	public:
		void Move() override; //函数重写,在子类方法后加override
};
class Archmage:public Hero
{
	public:
		void Move() override;
}
void Warrior::Move()
{
	cout << "战士在移动" << endl;
}
void Archmage::Move()
{
	cout << "法师在移动" << endl;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值