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.
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
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,
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;
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; };
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
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
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
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
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'
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
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,