Tag: diamond-problem

In Objekt-orientierten Programmiersprachen mit Mehrfachvererbung und Wissensorganisation, das Diamant-problem ist eine Unklarheit, die entsteht, wenn zwei Klassen B und C Erben von A, und die Klasse D erbt von B und C.

Mehrfachvererbung in java

Anzahl der Antworten 8 Antworten
Java ist nicht so dass die Vererbung von mehreren Klassen (noch ist es erlaubt, die Vererbung von mehreren Schnittstellen.), Ich weiß, es ist sehr viel inline mit classic diamond-problem. Aber meine Frage ist warum ist java nicht

Wie Schnittstellen lösen der Diamant-prob

Anzahl der Antworten 6 Antworten
Brauche ich um zu diskutieren, eine Sache mit Ihnen. Ich lese über die Schnittstelle, es ist ein Vertrag zwischen der Klasse, der Schnittstelle, die die Klasse die Implementierung aller Methoden der Schnittstelle. Lösen Sie den berühmten diamond-problem,

g++ ", denn die folgenden virtuellen Funktionen sind rein" mit der abstrakten Basis-Klasse

Anzahl der Antworten 2 Antworten
Hier ist mein Beispiel code, die den Fehler erzeugt: struct Impl { int data_size_; int find(int var){return 0;} int get(int rowid){return 0;} }; class Container { public: Container() {} virtual ~Container() {} virtual int get_size() = 0;

Befestigung C++ Mehrfachvererbung Mehrdeutig Nennen

Anzahl der Antworten 3 Antworten
Ich habe drei Klassen wie folgt aufgebaut: #include <iostream> using namespace std; class Keyword { public: virtual float GetValue() = 0; }; class CharacterKeyword : public Keyword { public: virtual float GetValue(){return _value;} private: float _value; };

python Mehrfachvererbung übergeben von Argumenten in Konstruktoren mit super

Anzahl der Antworten 2 Antworten
Betrachten Sie den folgenden Ausschnitt aus python-code class A(object): def __init__(self, a): self.a = a class B(A): def __init__(self, a, b): super(B, self).__init__(a) self.b = b class C(A): def __init__(self, a, c): super(C, self).__init__(a) self.c = c

Mehrfache Vererbung + virtuelle Funktion Durcheinander

Anzahl der Antworten 6 Antworten
Ich habe eine diamond-Mehrfachvererbung Szenario wie dieses: A / \ B C \ / D Gemeinsamen übergeordneten Elements, A, definiert eine virtuelle Funktion fn(). Ist es möglich, beide B und C zu definieren fn()? Wenn es so

Diamantproblem

Anzahl der Antworten 2 Antworten
Wikipedia auf das Diamant-problem: "... das Diamant-problem ist eine Unklarheit, die entsteht, wenn zwei Klassen B und C Erben von A, und die Klasse D erbt von B und C. Wenn eine Methode in D ruft eine

Was sind die Unterschiede zwischen abstrakten Klassen und Schnittstellen in Java 8?

Anzahl der Antworten 5 Antworten
In Java verwendet werden, um eine subtile, aber wichtige Unterschied zwischen abstrakten Klassen und interfaces: Standardimplementierungen. Abstrakte Klassen haben könnte, Schnittstellen konnte nicht. Java 8 zwar stellt Standard-Implementierungen für die Schnittstellen, d.h. dies ist nicht mehr der

C ++ Vererbung über Dominanzwarnung

Anzahl der Antworten 1 Antworten
Ich versuche zu implementieren ist eine ziemlich große Objekte, die viele Schnittstellen. Einige dieser Schnittstellen sind rein virtuell. Vielleicht habe ich ein problem mit der diamond-Vererbung. Visual Studio meldet eine Warnung von C4250 ('class1' : inherits 'class2::member'

Wie löst die virtuelle Vererbung die Mehrdeutigkeit "Diamant" (Mehrfachvererbung)?

Anzahl der Antworten 7 Antworten
class A { public: void eat(){ cout<<"A";} }; class B: virtual public A { public: void eat(){ cout<<"B";} }; class C: virtual public A { public: void eat(){ cout<<"C";} }; class D: public B,C { public: void

Java-Mehrfachvererbung

Anzahl der Antworten 16 Antworten
In einem Versuch, zu verstehen, wie man zu lösen Java ist Mehrfachvererbung Probleme ich habe eine klassische Frage, die ich benötige geklärt. Können sagen, ich habe Klasse Animal dies hat sub-Klassen Bird und Horse und ich brauche,