NZSM NEWS DESK · 商丘建筑用工观察

C++ 多继承详情介绍

发布时间:2026/10/7 12:53:03 来源:NZSM 编辑部 商丘 · 八区县
本文配图 · 由资讯系统配图生成
C支持多继承即允许一个类同时继承多个类。关于多继承一直以来争议不断有一部分人认为多继承会带来大量的问题为了解决这些问题会使得语言本身变得非常复杂因此应当避免。另外一派认为多继承在某些场景下可以起到非常关键的作用应当予以支持。关于多重继承是好是坏这是一个非常复杂的问题网上历来争议不断。因此不过多阐述感兴趣的同学可以查阅一下相关资料。仅仅从实际支持来看目前市面上大部分的语言包括Java仅支持单继承只有C等少数语言支持多继承。这和C的理念也有关即认定不能通过减少语言特性来增强语言的表达力。看完争议之后我们来看看究竟什么是多继承呢我们来看一段代码案例1234567891011classA{public:voidfuncA();};classB{private:boolfuncB()const;};classC:publicA,publicB{ ... };在这段代码当中我们定义了两个类A和B然后我们创建了一个类C同时继承了A和B。这就是多继承这里要注意一点我们必须用关键字public来限定每一个基类否则的话编译器会默认这是一个私有继承。如果我们稍微修改一下代码就会出现一些问题比如1234567891011classA{public:voidfunc();};classB{private:boolfunc()const;};classC:publicA,publicB{ ... };在上面这个例子当中A和B都包含了函数func在下面的执行语句当中会报错。12C c;c.func();虽然B中的func函数是私有的但对于编译器来说依然是有歧义的。如果想要消除歧义我们可以这样调用c.A::func()。当多继承的父类拥有更高的继承层级的时候可能会出现更复杂的问题比如多继承菱形。也就是多个类之间的继承关系构成了一个抽象意义上的菱形比如我们参考一下C Primer中的例子在上面这张图当中Singer和Waiter都继承了Worker而SingingWaiter同时继承了Singer和Waiter。从图上来看这似乎没什么问题但在实现上问题不少。比如说对于SingingWaiter类来说它当中包含了多少Worker呢答案是有两个从Singer这边继承了一个Worker从Waiter又继承了一个Worker。那么我们这样写就会出现问题12SingingWaiter sw;Worker *p sw;通常这种赋值的时候会将基类指针设置成派生类中基类对象的地址但由于sw对象当中包含两个Worker对象有两个地址所以也会导致歧义。我们可以使用强制转换的方式消除歧义123SingingWaiter sw;Worker *p (Singer*) sw;Worker *p (Waiter*) sw;但显然这样的方法虽然能够解决问题到此这篇关于C 多继承详情介绍的文章就介绍到这了

以上内容为编辑部整理,涉及政策与考情的部分,以官方发布为准。有拿不准的地方,报考咨询随时问。

CERTIFIED

编辑说明

本文由 NZSM 编辑部根据公开信息与项目走访整理,不是官方文件原文,行文尽量用大白话。

资料来源

行业公开通知、商丘属地项目现场走访、学员与用工单位反馈,三方凑在一起核对过。

免责声明

涉及政策、考情的内容仅供参考,具体以官方发布为准,办理前请先核对原文。

转载合作

需要转载或谈合作,发邮件到 809451989@qq.com,注明出处,咱们好商量。

咨询服务办公室接待场景
本文整理 · NZSM 编辑部

几个常年跑商丘工地的人

我们蹲过商丘不少项目的班前会,也帮学员办过报名、领过证。持证报考、用工行情这些事,能说人话的就不拽条文,写下来给同样在工地上忙的您看。

电话 18236992212 工作日 8:30–18:00 服务睢阳 · 梁园 · 永城等八区县
了解编辑部 →

PATH · 从备考到上岗

文章里说到的这件事,落到个人身上就四步

第一步
1

对条件

学历、工作年限、年龄先对照一遍,缺材料早补,别到报名才发现。

第二步
2

约考试

盯紧当次通知,选最近的考期,科目大纲先过一遍心里有数。

第三步
3

拿证备案

成绩出来后按流程领证,上岗前把备案材料交到项目上。

第四步
4

持证上岗

证带在身上、台账挂在工地,岗位核验才不会卡壳。

CANN/GE ACL数据集缓冲区添加函数 CANN/GE ACL数据集缓冲区添加函数 aclmdlAddDatasetBuffer 【免费下载链接】ge GE(Graph Engine)是面向昇腾的图编译器和执行器,提供了计算图优化、多流并行、内存复用和模型下沉等技术手段,加速模型执行效率,减少模型内存占用。 GE 提供对 PyTorch、Te… 用ffmpeg高效批量调整图片尺寸的实战指南 用ffmpeg高效批量调整图片尺寸的实战指南 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … Transformers 音频特征提取工具库 audio_utils 全解析:从 Mel 刻度换算到对数 Mel 频谱 Transformers 音频特征提取工具库 audio_utils 全解析:从 Mel 刻度换算到对数 Mel 频谱 Transformers 音频特征提取工具库 audio_utils 全解析:从 Mel 刻度换算到对数 Mel 频谱 【免费下载链接】transformers 🤗 Transformers: the model-definition framework for state-of-the-art machine learning models in text, vision, audio, and mu… RustFS 多节点集群重启与滚动升级实战:Readiness、Quorum 与 Degraded 模式完全指南 RustFS 多节点集群重启与滚动升级实战:Readiness、Quorum 与 Degraded 模式完全指南 RustFS 多节点集群重启与滚动升级实战:Readiness、Quorum 与 Degraded 模式完全指南 【免费下载链接】rustfs 🚀2.3x faster than MinIO for 4KB object payloads. RustFS is an open-source, S3-compatible high-performance object storage system sup… Java Integer缓存揭秘:128陷阱原理、避坑与面试全解 Java Integer缓存揭秘:128陷阱原理、避坑与面试全解 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … RustFS Scanner 数据用量发布权威性决策:配额准入如何获得可用的权威依据 RustFS Scanner 数据用量发布权威性决策:配额准入如何获得可用的权威依据 RustFS Scanner 数据用量发布权威性决策:配额准入如何获得可用的权威依据 【免费下载链接】rustfs 🚀2.3x faster than MinIO for 4KB object payloads. RustFS is an open-source, S3-compatible high-performance object storage system supporting mi…

看完这篇,想接着问一句?

电话 18236992212 · 邮箱 809451989@qq.com,报考条件、岗位安排、证书备案,都可以直接问。