重载overload, 覆盖重写override,隐藏overwrite

1. 重载overload
	- 实现函数重载的条件:
		§ 同一个作用域(比如同在基类或者同在派生类)
		§ 参数个数不同或者参数类型不同或者参数顺序不同
		§ const也可以作为重载条件
	- 返回值不作为函数重载的依据
	- 函数重载和默认参数一起使用,需要额外注意二义性问题的产生
	
2. 覆盖重写override
	- 派生类函数覆盖重写基类虚函数:
	- 规则如下:
		§ 不同的作用域(分别位于派生类和基类)
		§ 派生类重写基类的virtual函数
		§ 函数返回值,函数名字,函数参数,必须和基类中的虚函数一致
		
3. 隐藏overwrite
	- 是指派生类的函数屏蔽了与其同名的基类函数
	- 规则如下:
		§ 如果派生类的函数与基类的函数同名,但是参数不同,此时不论有无virtual,基类的函数将被隐藏
		§ 如果派生类的函数与基类的函数同名,参数也相同,但是基类函数没有virtual关键字,则基类的函数被隐藏
		§ 任何时候重新定义基类中的一个重载函数,在基类中所有的其他版本将被自动隐藏(overwrite)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值