重载 重写(覆盖) 隐藏
来源:互联网 发布:任天堂vr知乎 编辑:程序博客网 时间:2024/05/18 02:15
基本概念:
重载
在一个类中被声明的几个具有不同参数列(参数的类型,个数,顺序不同)的同名函数,根据参数列表确 定调用哪个函数,重载不关心函数返回类型。
重写(覆盖):
其函数名,参数列表,返回值类型,所有都必须同基类中被重写的函数一致。只有函数体不同(返回值不同的协变返回类型也可以构成重载)。两个方法分别位于派生类与基类基类函数必须有 virtual 关键字,不能有 static ;子类方法有无virtual方法没影响。
隐藏
两个方法分别位于派生类与基类函数名字相同,返回值可以不相同参数不同,基类的函数不论有没 virtual 关键字都将被隐藏(注意只要同名函数,不管参数列表是否相同,基类函数都会被隐藏)参数相同,但是基类函数没有 virtual关键字,那么基类的方法将被隐藏(注意和重写的区别)
#include <iostream>using namespace std;class Base{public: void fun(double ,int ){ cout << "Base::fun(double ,int )" << endl; }};class Derive : public Base{public: void fun(int ){ cout << "Derive::fun(int )" << endl; }};int main(){ Derive pd; pd.fun(1);//Derive::fun(int ) pb.fun(0.01, 1);//error C2660: “Derive::fun”: 函数不接受 2 个参数 system("pause"); return 0;}
函数重写(override)与协变返回类型(covariant return type)
const重载
阅读全文
0 0
- 重载、重写(覆盖)、隐藏
- 重载,重写(覆盖),隐藏
- 重载 重写(覆盖) 隐藏
- 重载,重写(覆盖),隐藏
- 重载、覆盖(重写)、隐藏
- 重载重写覆盖隐藏
- 重载,重写,隐藏,覆盖
- 重载、覆盖、重写(隐藏)
- C++重载、重写(覆盖)和隐藏
- c++中的隐藏、重载、覆盖(重写)
- C++中的隐藏、重载、覆盖(重写)
- c++中的隐藏、重载、覆盖(重写)
- c++中的隐藏、重载、覆盖(重写)
- c++中的隐藏、重载、覆盖(重写)
- C++ 重载、覆盖(重写)、隐藏
- C++中的重载、重写(覆盖)、隐藏
- c++中的隐藏、重载、覆盖(重写)
- c++中的隐藏、重载、覆盖(重写)
- C++自学之路:2.4--函数
- 【Linux】命令代换
- 讨论cocos2d-x字体绘制原理和应用方案
- 系统登录档配置及分析
- React Native ref高级用法&&setNativeProps使用
- 重载 重写(覆盖) 隐藏
- js 简单时间倒计时实现
- 自己实现一个泛型ArrayList
- 小明,你为啥不做作业?
- 预处理、编译、汇编和链接
- 掌静脉身份识别仪的硬件设计
- 欢迎使用CSDN-markdown编辑器
- 学习倒谱(进行中)
- 嵌入式每日学习心得2017.07.12