前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【非原创】C++类成员函数的重载、覆盖和隐藏

【非原创】C++类成员函数的重载、覆盖和隐藏

作者头像
xiaoxi666
发布2018-10-29 17:30:23
6670
发布2018-10-29 17:30:23
举报
文章被收录于专栏:xiaoxi666的专栏xiaoxi666的专栏

题目: 类成员函数的重载、覆盖和隐藏区别描述正确的有?

A、覆盖是指在同一个类中名字相同,参数不同

B、重载是指派生类函数覆盖基类函数,函数相同,参数相同,基类函数必须有virtual关键字

C、派生类函数与基类函数相同,但是参数不同,会"隐藏"父类函数

D、函数名字相同,参数相同,基类无virtual关键字的派生类的函数会"隐藏"父类函数

答案: CD

解析

a.成员函数被重载的特征: (1)相同的范围(在同一个类中); (2)函数名字相同; (3)参数不同; (4)virtual 关键字可有可无。 b.覆盖是指派生类函数覆盖基类函数,特征是: (1)不同的范围(分别位于派生类与基类); (2)函数名字相同; (3)参数相同; (4)基类函数必须有virtual 关键字。 c.“隐藏”是指派生类的函数屏蔽了与其同名的基类函数,规则如下: (1)如果派生类的函数与基类的函数同名,但是参数不同。此时,不论有无virtual关键字,基类的函数将被隐藏(注意别与重载混淆)。 (2)如果派生类的函数与基类的函数同名,并且参数也相同,但是基类函数没有virtual关键字。此时,基类的函数被隐藏(注意别与覆盖混淆)。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017-08-12 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档