C++中的重载、覆盖和隐藏的区分
来源:互联网 发布:杭州行知小学 孙杨 编辑:程序博客网 时间:2024/06/03 06:46
C++中经常用到重载、覆盖和隐藏这三个概念,也经常容易搞混。所以,这篇博文来整理一下它们之间的异同。
1. 重载——实现多态性
A.相同的范围(同一个类中)
B.函数的名字相同
C.参数类型不同(不能进行隐式类型转换)
D.Virtual关键字可有可无
2. 覆盖(重写)——派生类函数覆盖基类函数
A.不同的范围(分别位于基类与派生类中)
B.函数名字相同
C.参数相同
D.基类函数必须有virtual关键字
3. 隐藏(重定义)——派生类的函数屏蔽了与其同名的基类函数
A.如果派生类的函数与基类的函数同名,但是参数不同,此时不论有无virtual关键字,基类的函数都将被隐藏,注意别与重载混淆)
B.如果派生类的函数与基类的函数同名,并且参数也相同,但是基类函数没有virtual关键字,此时基类的函数被隐藏(注意别与覆盖混淆)
1 0
- C++中的重载、覆盖和隐藏的区分
- 如何区分C++中函数的重载、覆盖和隐藏
- C++:重载、覆盖和隐藏
- 区分重载(overload),覆盖(Override)和隐藏(hide)
- 区分重载(overload),覆盖(Override)和隐藏(hide)
- 区分重载(overload),覆盖(Override)和隐藏(hide)
- 如何区分重载、重写(覆盖)和隐藏
- C++中的重载、覆盖和隐藏的区别
- Objective-C 中方法的重载,覆盖和隐藏
- C++_重载、重写(覆盖)和隐藏的区别:
- 关于C++中的重载,覆盖和隐藏
- C++继承中的重载、覆盖和隐藏
- C++继承中的重载,覆盖和隐藏
- c++中的重载、覆盖和隐藏
- C++继承中的重载、覆盖和隐藏
- c++中的重载,覆盖和隐藏
- C++类中的重载、覆盖和隐藏
- 类继承中的重载,覆盖和隐藏
- c++
- Qt4.8.6 Embedded Linux 的编译与移植
- 简单工厂模式(一)
- mongodb系列之五:java分页优化
- 黑马程序员——java基础排序算法:选择排序、冒泡排序和插入排序
- C++中的重载、覆盖和隐藏的区分
- android开发 用到的十个好工具
- 0ctf login writeup
- Longest Consecutive Sequence--LeetCode
- php + mySQL + WampServer 搭建实验室网站
- 系统辨识实验设计的收获
- NSCFDictionary bytes]: unrecognized selector sent to instance
- zoj 3710 Friends The 10th Zhejiang Provincial Collegiate Programming Contest - F
- EXCEL学习-用Excel制作成对条形图