重载和重写定义及区别

重载:表示在同一个作用域内,具有相同名字的函数,它们返回值相同,但参数列表个数不同(类型不同or个数不同)

重写:表示在不同类中(A,B类中,A属于基类,B属于子类)重写的前提条件是B必须继承基类AB想要使用基类A中的某个函数,但函数中功能有些改变,那么在继承了基类A后,可以在B类中用定义相同函数名,其中返回值,参数列表中类型个数必须相同,若不同则属于不同方法中的重载。

 

区别:重载的作用是对于不同类型,不同操作数欲实现类似操作的函数定义

           重写的作用是对于某一个父类函数,子类欲在其自己类中继承不同操作的同一函数

 

重载属于多态中的静态绑定(编译时绑定)

 

注意:

1.如果在基类和父类中发生 “ 重载 ” 那么基类中的函数会被隐藏

2.如果在基类和父类中发生 “ 重写” 但是基类函数没有virtual 关键字,此时基类函数会被隐藏。  

第二点也可以理解为若是基类父类发生重写,若要实现多态,需要在父类函数添加virtual关键字。

 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值