virtual-inheritance

virtual-inheritance

文章 0 浏览 6

为什么说该代码中哪些类型是远不足的?

Tarrayint是Tarray的孩子,为什么我不能在polymorph函数中返回它? template class TArray { public: virtual T& operator[](int index) = 0; virtual…

再见回来 2025-01-30 14:35:12 2 0

“标记为覆盖但不覆盖” OOP 代码中的问题

我正在尝试用 C++ 练习 OOP,但遇到了有关函数重写的问题。在我的 Shape2D 和 Shape3D 类中,我在 Square 和 Sphere 类(分别为 ShowArea() 和 ShowVo…

辞旧 2025-01-16 00:49:44 3 0

双可怕钻石继承问题(允许替代解决方案)

我最终陷入了下面列出的情况。 我有一个库是纯 CPP,没有外部库,另一个项目是一个与外部库交互的 SDK。 名称前面的“I”表示抽象类。箭头表示继承。 …

森末i 2025-01-14 13:15:11 3 0

虚拟继承:接口和构造函数

我正在使用 C++11。我试图声明 2 个接口:B 和 C,每个接口声明一些由子类实现的函数。这两个接口都依赖于公共 A 类中声明的变量和函数。即使这种相对…

木槿暧夏七纪年 2025-01-09 18:49:16 6 0

gcc 4.5.1 虚拟继承问题

让我们从代码片段开始: #include struct God{ God(){_test = 8;} virtual ~God(){} int _test; }; struct Base1 : public virtual God{ //Base1(){st…

叫嚣ゝ 2025-01-04 04:09:42 6 0

基类中的虚拟继承和空 vtable

有这样的代码: #include class Base { int x; }; class Derived : virtual public Base { int y; }; int main() { std::cout << sizeof(Derived) << …

我的奇迹 2024-12-29 16:19:45 8 0

如何检测和断言特定类的虚拟继承?

我有一个实现引用计数的 C++ 类,并且我希望该类的所有用户仅从该类虚拟继承,以便没有对象最终拥有多个引用计数器。 我想要某种方法来在编译时或至少…

江挽川 2024-12-21 19:01:44 5 0

C++抽象基类构造函数/析构函数 - 一般正确性

我想要一个 C++ Interface ,在继承时必须重写它(如果可能的话)。到目前为止,我有以下内容: class ICommand{ public: // Virtual constructor. Ne…

自控 2024-12-21 02:00:07 4 0

虚拟继承混乱

我正在阅读有关继承的内容,并且有一个我几个小时都无法解决的主要问题: 给定一个类 Bar 是一个具有 virtual 函数的类, class Bar { virtual void C…

蹲墙角沉默 2024-12-16 19:11:19 6 0

C++ 中具有虚拟继承的类大小

#include using namespace std; class abc { int a; }; class xyz : public virtual abc { int b; }; int main() { abc obj; xyz obj1; cout<

半葬歌 2024-12-14 20:46:28 6 0

为什么涉及虚拟继承时不能使用static_cast向下转型?

考虑以下代码: struct Base {}; struct Derived : public virtual Base {}; void f() { Base* b = new Derived; Derived* d = static_cast(b); } 这…

说好的呢 2024-12-05 22:30:08 9 0

单一虚拟继承

据我所知,基类的虚拟继承在多个派生类之间创建了一个公共共享基类,从而解决了 DDD 问题。如果我的基类只有一个派生类,那么我虚拟继承基类或非虚拟…

妄想挽回 2024-12-03 23:03:30 8 0

C++ 如何虚拟继承是在编译器中实现的吗?

编译器如何实现虚拟继承? 在以下代码中: class A { public: A(int) {} }; class B : public virtual A { public: B() : A(1) {} }; class C : publi…

云之铃。 2024-12-03 21:14:38 7 0

虚拟继承(菱形) - 为什么我需要从最底层的派生类向上转换为基类

请考虑以下事项: #include #include using namespace std; class A { public: A(const char* sName) //conversion constructor : _sName(sName) {cou…

通知家属抬走 2024-12-02 10:34:33 8 0

多重(钻石)继承在没有“虚拟”的情况下进行编译,但不使用“虚拟”

给出以下代码(没有虚拟继承): class A { public: virtual void f() = 0; }; class B : public A { public: virtual void f() {} }; class C : publ…

落日海湾 2024-12-01 22:07:41 10 0
更多

推荐作者

十二

文章 0 评论 0

飞烟轻若梦

文章 0 评论 0

OPleyuhuo

文章 0 评论 0

wxb0109

文章 0 评论 0

旧城空念

文章 0 评论 0

-小熊_

文章 0 评论 0

更多

友情链接

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文