C++多继承、钻石继承、虚继承
2021/6/2 12:22:28
本文主要是介绍C++多继承、钻石继承、虚继承,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
C++的语言特性太多了,一时不用就忘了,本篇记录C++多继承的用法。
一 多继承
比如有3个类,B派生于类A1, A2, 代码如下
class A1 { public: A1():m_ID(10) {} public: int m_ID; }; class A2 { public: A2():m_ID(11) {} public: int m_ID; }; class B : public A1, public A2 { public: B() {} };
以上代码父类A1, A2有同名的类成员 m_ID,那么派生类B自然也有m_ID这个成员,那么派生类A该怎么获取m_ID呢,如下代码,直接获取?
此时编译器报错,“B:m_ID”不明确,不知道调用时哪个类的m_ID成员,正确的写法如下:
二 钻石继承
根据以上代码,在增加一个类A, 让A1, A2都继承于A,那么现在的
这篇关于C++多继承、钻石继承、虚继承的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-26MQ源码教程:轻松入门Apache MQ源码解析
- 2024-11-26Rocket消息队列教程:新手入门必读
- 2024-11-26Rocket消息队列教程:新手入门指南
- 2024-11-26RocketMQ底层原理教程:新手入门指南
- 2024-11-26RocketMQ底层原理教程:入门级详解
- 2024-11-26如何获取 OpenAI API Key 用于ChatGPT AI大模型开发?
- 2024-11-26MATLAB 中 A(7)=[];什么意思?-icode9专业技术文章分享
- 2024-11-26UniApp 中如何实现使用输入法时保持页面列表不动的效果?-icode9专业技术文章分享
- 2024-11-26在 UniApp 中怎么实现输入法弹出时禁止页面向上滚动?-icode9专业技术文章分享
- 2024-11-26WebSocket是什么,怎么使用?-icode9专业技术文章分享