问题标签 [multiple-inheritance]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 关于 C++ 中的多重继承、虚拟基类和对象大小的问题
以下代码打印 20,即 sizeof(z) 为 20。
而如果我在这里不使用虚拟基类,即以下代码:sizeof(z) 为 16。
为什么在第一种情况下 sizeof(z) more(20) ?不应该是 12,因为 Base 在 Z 中只包含一次?
c++ - 为什么我应该避免 C++ 中的多重继承?
使用多重继承是一个好概念还是我可以做其他事情?
python - 为什么在使用 super() 时必须指定自己的类,有没有办法绕过它?
当使用 Pythonsuper()
做方法链时,你必须明确指定你自己的类,例如:
我必须将我的班级名称指定MyDecorator
为super()
. 这不是 DRY。当我现在重命名我的班级时,我将不得不重命名它两次。为什么以这种方式实施?有没有办法摆脱不得不写两次(或更多)类名的麻烦?
c++ - Visual Studio 编译器警告 C4250('class1':通过支配继承 'class2::member')
以下代码生成警告 C4250。我的问题是,最好的解决方案是什么?
根据我所阅读的内容,应该可以这样做:
但是,这实际上并没有做任何事情。我目前解决的方法是:
大家对此有何看法?
oop - 多重继承批评
我正在研究多重继承的概念(自从我愤怒地编写 C++ 代码以来已经快 10 年了,并且只是在学术上对这个概念感兴趣)。我在维基百科上找到了这个参考。
他们列出的对 MI 的一个批评是“不能从一个类中显式地多次继承”。我对这个声明感到困惑,并且不能 100% 确定这是指什么。
当然,类继承描述了一个类的结构,并且从同一个类多次继承只会重复同一个类契约,所以我看不出它会给批评带来什么好处。显式继承会假设类函数和属性的多个实例吗?
我想了解这种批评指的是什么,以及为什么它隐含地不适用于启用多重继承的语言。
c# - 实现 2 个具有“同名”属性的接口
这似乎是一个合理的(也许很简单?)场景,但您将如何执行以下操作:
假设我有 2 个接口:
我想要一个类来实现这两个接口:
鉴于每个接口都有不同的访问级别,如何在类中定义 ErrorMsg 属性?
如果您想知道,这是我的场景:我正在使用伪 MVC 架构编写 UserControl,其中 UserControl 将扩展接口暴露给它的 Controller,并将 Simple 接口暴露给控件的使用者。
顺便说一句,在 VB.NET 中实现这一点(任何建议的在 vb 中的 synatx 将不胜感激)。
python - 什么是 mixin,它们为什么有用?
在“ Programming Python ”中,Mark Lutz 提到了“mixins”。我来自 C/C++/C# 背景,以前没有听说过这个词。什么是混音?
在这个例子的两行之间阅读(我已经链接到它,因为它很长),我假设这是使用多重继承来扩展一个类而不是“适当的”子类化的情况。这是正确的吗?
为什么我要这样做而不是将新功能放入子类中?就此而言,为什么混合/多重继承方法比使用组合更好?
混合继承与多重继承有什么区别?这只是语义问题吗?
data-binding - 绑定 IList不显示 IMyInterface 继承的接口的成员
我将 IList 绑定到 GridView。IMyInterface 看起来像
我将一个实例绑定到这样的网格:
当将此绑定到网格时,网格中显示的唯一成员是 IMyInterface 的直接成员:GoalStartDate 和 GoalEndDate。
这是为什么?如何让网格显示它继承的其他接口的成员?
更新 继承的接口定义简单的数据属性,如
有一个实现IMyInterface的类:
这些被转换为 IMyInterface,并在我绑定到 GridView 的列表中返回。
oop - 多重继承的用途?
谁能想到使用多重继承的任何情况?我能想到的每一个案例都可以通过方法操作符来解决
architecture - 使用无法修改的完全独立的继承树子类化类
考虑到任何一个类的继承树都不能修改为从另一个继承的限制,有人如何将两个具有独立继承树的类连接起来以桥接上下文边界?
即,如果作为实体的项目保存到数据库中,假设:
需要使用绘图组件显示,比方说:
简单地有一个子类会很好,stockitemgraphicnode
因为有很多常见的成员。
设计解决方案的最佳方法是什么?