技术栈

菱形继承(多继承)

ACALJJ322024-10-14 16:22

1. 什么是菱形继承

也就是多继承,C++独有的特性。

2. 菱形继承有什么问题?

(1)存在内存浪费,多存一份父类的父类。

(2)容易造成二义性(不知道修改哪一个基本属性)。

3. 如何解决?

虚继承,子类只继承一次父类的父类,继承时带上virtual关键字。

4. 实现原理(内存模型)

通过虚基表指针,找到共同指向的父类。

参考

【【C++面试题】怎么解决C++菱形继承】

菱形继承问题

上一篇:Js函数
下一篇:Spring Cloud 配置中心详解:微服务动态读取与案例示范
相关推荐
luj_1768
9 小时前
星火科技助力边远地区防病攻坚
c语言·开发语言·c++·经验分享·算法
zmzb0103
10 小时前
C++课后习题训练记录Day175
开发语言·c++
啦啦啦啦啦zzzz
11 小时前
工具:动态类工厂和用配置文件存储属性
c++·设计模式·工具·动态工厂
脱胎换骨-军哥
11 小时前
C++ 代码规范与格式化指南
开发语言·c++·代码规范
迷途之人不知返
13 小时前
lambda表达式
c++
@三十一Y
13 小时前
C++:红黑树的实现
开发语言·c++
_wyt001
13 小时前
拓扑排序:有向无环图的排队艺术
c++·拓扑排序·队列
皓月斯语
13 小时前
B2118 验证子串
c++·题解
乐观勇敢坚强的老彭
14 小时前
C++信奥:开关门、开关灯问题
开发语言·c++·算法
2301_77799834
15 小时前
C/C++:预处理详解
c语言·c++
热门推荐
01GitHub 镜像站点02如何新建文件夹? 电脑新建文件夹的4种方法03国内可直接用、免费额度/永久免费的大模型API清单(含 SiliconFlow、火山、阿里、智谱、百度、Kimi、DeepSeek、DMXAPI 等)042026年7月AI圈大地震:GPT-5.6被政府限制、Claude入驻Slack、Anthropic自研芯片0500 Debian字符界面如何支持中文06微信历史版本含下载地址( Windows PC | 安卓 | MAC )及设置微信不更新072026 国产 AI 大模型横评:DeepSeek、通义千问、Kimi、文心一言、星火、豆包谁更能打?08AI 编程 IDE 全景解析 2026:Agent 全面接管开发链路09Agnes AI 免费 API 接入指南:文本、生图、生视频,一套接口全免费10历年考研数学一、数学二、数学三真题试卷及答案PDF