首页  >   经验  >   C++重载:横向重载(静态重载)与纵向重载(动态重载)

C++重载:横向重载(静态重载)与纵向重载(动态重载)

查看 codexia 的博客 2015-06-23 13:26:19 2058
多态性   重载  
手机阅读 | 转发赚积分
手机收藏 | 分享给好友
简介重载机制分为横向重载和纵向重载,本文就对此进行讨论和分析。横向重载就是函数参数列表的重载,而纵向重载就是虚函数的重载。横向重载也是静态重载(编译时),纵向重载也是动态重载(运行时重载)。都体现的是多态性。
    经过大量的学习,对于C++的重载有了更进一步的理解,根据我的理解,分享给大家,给大家一个全新的认识。如果你还没有听过我说的这种说法,你还需要加深学习,如果你已经理解过了,你可以不用往下看了。
    曾经我对重载并不是很理解,直到后来,在一个学习资料上看到了一个词汇“纵向重载”。那时候我很意外,因为从没听说过所谓的“纵向重载”,也就更没有听说过“横向重载”。然后看了解释,似懂非懂。经过一段时间,慢慢的就想通了。现在就在这里分享给大家,帮助大家快速理解这个概念。
    在我们的一般的学习资料里,提到的重载,基本上指的是函数重载,也就是C++类中的成员函数的重载,重载需要满足的根本条件就是函数特征标。函数特征标就是参数列表,包括参数的个数和参数的类型以及参数的顺序。具体的重载要求可以参考资料,这里不做细致的描述。只要有任何一个条件不一样,比如顺序不一样,或者参数一个类型不一样,就构成了不同的特征标。而C++类中支持这种表示,也就是一个函数以同一个名字可以有很多种特征标的函数形式,这就是最开始接触的函数重载。然而,开始,一直以为重载就仅此而已。但是随着学习的深入,就接触到了“纵向重载”这一个概念,这也促使我进一步回头来审视之前的脑中的概念。
    后来发现,MFC中重载实在是太常见了,这就是所谓的虚函数的覆盖。原来也知道虚函数的覆盖。派生类只要将基类的虚函数完全一样的在派生类声明并实现,就实现了虚函数的覆盖。然后听到“纵向重载”,根据其解释,慢慢接受这种概念。后来仔细想想,是这么回事。只能说,我之前的理解太狭隘了。
   
1.微信扫码
2.点击按钮,粘贴命令
自动刷新 手动刷新
命令:rd 9uu@\ 复制
提示:如果您发送了命令,自动刷新会展开全文。自动刷新最多60秒,超过60秒请点击手动刷新。
创作不易,汗水不止!为防止劳动果实被爬虫窃取,开启了反爬机制,需要您发送命令继续阅读。取关会再次出现此提示。一段时间后出现此提示,请再次发送即可。如有问题,请加客服微信Freeme007处理。感谢您的理解。
标注
评论
站内搜
百度搜
传送到手机
手机扫码,识别文字,完成传送x
加载中...
标注内容x
加载中...
添加标注x
文章标题:C++重载:横向重载(静态重载)与纵向重载(动态重载)
文章地址:http://www.cjjjs.com/article/6232015192613249
转载到个人博客,请在文末带上右侧内容(含超链接):本文转载自:C++重载:横向重载(静态重载)与纵向重载(动态重载)
收藏 0 点赞 0
公众号
微信赞赏
支付宝赞赏
领支付宝大红包
QQ群

相关阅读

  1. 关于重载+运算符实现两个字符串合并出现的bug 查找全网同类文章
  2. 重载CEdit实现金额数字框,允许输入数字和小数点 查找全网同类文章
  3. 被我们忽略的一种类重载的实现方式,很巧妙的实现方式 查找全网同类文章
  4. C++重载:横向重载(静态重载)与纵向重载(动态重载) 查找全网同类文章
  5. 教你如何解决VS2015的30天试用期已过即VS2015许可证已过期的问题 查找全网同类文章
  6. Linux源码笔记——感觉写的巧妙的代码 查找全网同类文章
  7. 在Win7上安装VS2015 RC(候选发布版)失败完美解决方法 查找全网同类文章
  8. 完全图解VS2017安装过程并演示VS2017创建Linux项目和调试 查找全网同类文章
  9. 表白代码,你值得拥有 查找全网同类文章
  10. VS2015入门必备介绍,扫扫盲吧 查找全网同类文章
分享到:
分享文章[C++重载:横向重载(静态重载)与纵向重载(动态重载)]到QQ空间

相关阅读

猜您感兴趣