类成员函数的重载、覆盖和隐藏区别
答案:
a.成员函数被重载的特征:
(1)相同的范围(在同一个类中);
(2)函数名字相同;
(3)参数不同;
(4)virtual 关键字可有可无。
b.覆盖是指派生类函数覆盖基类函数,特征是:
(1)不同的范围(分别位于派生类与基类);
(2)函数名字相同;
(3)参数相同;
(4)基类函数必须有virtual 关键字。
c.“隐藏”是指派生类的函数屏蔽了与其同名的基类函数,规则如下:
(1)如果派生类的函数与基类的函数同名,但是参数不同。此时,不论有无virtual关键字,基类的函数将被隐藏(注意别与重载混淆)。
(2)如果派生类的函数与基类的函数同名,并且参数也相同,但是基类函数没有virtual 关键字。此时,基类的函数被隐藏(注意别与覆盖混淆)
a.成员函数被重载的特征:
(1)相同的范围(在同一个类中);
(2)函数名字相同;
(3)参数不同;
(4)virtual 关键字可有可无。
b.覆盖是指派生类函数覆盖基类函数,特征是:
(1)不同的范围(分别位于派生类与基类);
(2)函数名字相同;
(3)参数相同;
(4)基类函数必须有virtual 关键字。
c.“隐藏”是指派生类的函数屏蔽了与其同名的基类函数,规则如下:
(1)如果派生类的函数与基类的函数同名,但是参数不同。此时,不论有无virtual关键字,基类的函数将被隐藏(注意别与重载混淆)。
(2)如果派生类的函数与基类的函数同名,并且参数也相同,但是基类函数没有virtual 关键字。此时,基类的函数被隐藏(注意别与覆盖混淆)
【类成员函数的重载、覆盖和隐藏区别】相关文章
3. static全局变量与普通的全局变量有什么区别?static局部变量和普通局部变量有什么区别?static函数与普通函数有什么区别?
4. 什么是方法的重载
6. 存储过程和函数的区别
9. 介绍一下Prototype的$()函数,$F()函数,$A()函数都是什么作用?
本文来源:https://www.mianshiwenti.com/a13083.html
进入下载页面
﹝类成员函数的重载、覆盖和隐藏区别﹞相关内容
- 写出以下ASP函数的功能
- 我看到了用指针调用函数的不同语法形式
- 递归计算如下递归函数的值(斐波拉契)
- 怎样建立和理解非常复杂的声明?例如定义一个包含N 个指向返回 指向字符的指针的函数的指针的数组?
- 如何向接受结构参数的函数传入常数值
- 介绍一下Transact-SQL中SPACE函数的用法
- 介绍一下Python下range()函数的用法
- 在职人员函授期间自我评价分享
- 承德市生育保险覆盖至失业人员
- 生育保险有望在长治全市覆盖