当前位置:  编程技术>c/c++/嵌入式

类成员函数的重载、覆盖与隐藏之间的区别总结

    来源: 互联网  发布时间:2014-10-21

    本文导语:  答案:a.成员函数被重载的特征:(1)相同的范围(比如在同一个类中);(2)函数名字相同;(3)参数不同;(4)virtual 关键字可有可无。 b.覆盖是指派生类函数覆盖基类函数,特征是:(1)不同的范围(分别位于派生类...

答案:
a.成员函数被重载的特征:
(1)相同的范围(比如在同一个类中);
(2)函数名字相同;
(3)参数不同;
(4)virtual 关键字可有可无。

b.覆盖是指派生类函数覆盖基类函数,特征是:
(1)不同的范围(分别位于派生类与基类);
(2)函数名字相同;
(3)参数相同;
(4)基类函数必须有virtual 关键字。

c.“隐藏”是指派生类的函数屏蔽了与其同名的基类函数,规则如下:
(1)如果派生类的函数与基类的函数同名,但是参数不同。此时,不论有无virtual关键字,基类的函数将被隐藏(注意别与重载混淆)。

(2)如果派生类的函数与基类的函数同名,并且参数也相同,但是基类函数没有virtual 关键字。此时,基类的函数被隐藏(注意别与覆盖混淆)

隐藏破坏了多态性,因此一般要将隐藏换成覆盖。


    
 
 

您可能感兴趣的文章:

  • 成员函数的重载、覆盖与隐藏详细解析
  • C++运算符重载 成员函数与友元函数详解
  • C++ Maps 成员 key_comp():返回比较元素key的函数
  • gdb调试时如何进入类成员函数和模板类成员函数?谢谢
  • C++ Maps 成员 value_comp():返回比较元素value的函数
  • 关于C++静态成员函数访问非静态成员变量的问题
  • C++ MultiMaps 成员 key_comp():返回比较key的函数
  • linux下类的成员函数不可以作为自定义的信号处理函数么?
  • C++ MultiMaps 成员 value_comp():返回比较元素value的函数
  • 一个基本概念问题:静态函数只能调用静态方法,类的成员函数也是静态的吗?
  • C++ STL Bitsets构造函数及成员函数解释及代码示例
  • 指向类成员函数的指针其实并非指针
  • C++ Strings(字符串) 成员 Constructors:构造函数,用于字符串初始化
  • 请问在linux下面编程怎样查询stl类的成员函数
  • c++ stl容器set成员函数介绍及set集合插入,遍历等用法举例
  • 如何在工作线程中调用图形界面线程的成员函数(串口通信)?
  • Windows和Linux下C++类成员方法作为线程函数方法介绍
  • 怎样在一个类里面互相调用成员函数?
  • C++ STL库中priority_queue介绍,成员函数说明及priority_queue具体用法举例
  • linux的动态链接库开发的时候,基类带有虚成员函数的话会找不到符号。
  • 双向队列Deque 类成员函数列表参考(c++ STL 容器)
  • 如何编译含有静态成员函数的C++文件?
  • c++ STL关联式容器Map成员函数介绍及查找(find()),插入(insert()),删除(erase())等操作代码举例
  • 线程 和 成员函数 的问题
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • java命名空间java.lang.reflect类method的类成员方法: getdefaultvalue定义及介绍
  • 请问:什么是实例成员和类成员?
  • java命名空间java.security.acl接口group的类成员方法: ismember定义及介绍
  • 类A为什么从外包继承一个protected成员后,类A的子类为什么不能访问这个成员
  • java命名空间java.lang.reflect接口member的类成员方法: getname定义及介绍
  • 将父类变量强制赋予子类变量时,发生了什么?比如子类的成员变量,假如父类中有不存在子类中有的成员变量的情况,那么子类中该变量是否默认取值???
  • java命名空间java.security.acl接口group的类成员方法: addmember定义及介绍
  • java开发知识 iis7站长之家
  • java命名空间java.lang.reflect接口member的类成员方法: declared定义及介绍
  • C++类中的常数据成员与静态数据成员之间的区别
  • java命名空间java.lang.reflect接口member的类成员方法: public定义及介绍
  • 类静态变量能定义在成员方法中吗?? 在线
  • java命名空间java.security.acl接口group的类成员方法: members定义及介绍
  • Python 面向对象 成员的访问约束
  • java命名空间java.lang.reflect接口member的类成员方法: getmodifiers定义及介绍
  • 成员管理系统 ClubMaster
  • java命名空间javax.sound.sampled类compoundcontrol的类成员方法: compoundcontrol定义及介绍
  • 深入C#实例成员和静态成员详解
  • java命名空间java.lang类class<t>的类成员方法: ismemberclass定义及介绍
  • 如何把Object的各类型的数据成员填充到byte缓冲区
  • java命名空间java.security.acl接口group的类成员方法: removemember定义及介绍
  • jsp Recordset 对象有 PageSize 成员吗


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3