C++之多态

多态的知识有以下几点

 

1.什么是多态?

     简单来说就是不同的对象去完成同一个行为会产生不同的结果。

举个例子:国庆去华山游玩,一般的成人要买全价票,而我们学生买票买学生票。这就是两种不同的对象都去买票但是产生的结果却不同,一个是全价票一个是学生票。

 

2.如何使用多态?

使用多态有两个前提条件

1.调用函数的对象必须是指针或者引用

2.调用的函数必须是虚函数,而且完成了虚函数的重写

class Person
{
public:
	virtual void BuyTicket()
	{
		cout << "全价票" << endl;
	}
};
class Student : public Person
{
public:
	virtual void BuyTicket()
	{
		cout << "学生票" << endl;
	}
};
void Fun(Person & p)
{
	p.BuyTicket();
}

那么为什么要是对象的指针或引用?

什么又是虚函数?什么又是虚函数的重写?

 

3.虚函数的重写(覆盖)

虚函数:

   所谓的虚函数就是在函数前面加上virtual这个关键字。那么他就成为了虚函数。

虚函数的重写:

   派生类中有一个跟基类的完全相同虚函数,我们就称子类的虚函数重写了基类的虚函数,完
全相同是指&

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值