Suchergebnisse für Anfrage "virtual-inheritance"
Wie löst die virtuelle Vererbung die Mehrdeutigkeit des „Diamanten“ (Mehrfachvererbung)?
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 eat(){ cout<<"D";} }; int main(){ A *a = ...
C ++ Multiple Virtual Inheritance vs. COM
Das Netz ist überfüllt mit Erklärungen des "gefürchtetes Diamantproblem" [http://en.wikipedia.org/wiki/Diamond_problem]. Genauso wie StackOverflow. Ich glaube, ich verstehe das, aber ich kann dieses Wissen nicht in etwas Ähnliches und doch ...
C ++ Virtual Inheritance Memory Layout
Virtuelle Vererbungsspeicherlayouts Ich versuche zu verstehen, was unter der Haube im Speicher mit virtueller Vererbung und vTables / vPtrs passiert und was nicht. Ich habe zwei Beispiele für Code, den ich geschrieben habe, und verstehe ...
Aufrufen des überladenen Konstruktors einer virtuellen Basisklasse
Gibt es eine (praktische) Möglichkeit, die normale (virtuelle) Aufrufreihenfolge von Konstruktoren zu umgehen? Beispiel class A { const int i; public: A() : i(0) { cout << "calling A()" << endl; } A(int p) : i(p) { cout << "calling A(int)" << ...
Virtuelle und nicht virtuelle Vererbung einer Basisklasse mischen
Dies ist der Code: struct Biology { Biology() { cout << "Biology CTOR" << endl; } }; struct Human : Biology { Human() { cout << "Human CTOR" << endl; } }; struct Animal : virtual Biology { Animal() { cout << "Animal CTOR" << endl; } }; struct ...
C ++ kann nicht von Basis A zu abgeleitetem Typ B über virtuelle Basis A konvertieren.
Ich habe drei Klassen: class A {}; class B : virtual public A {}; class C : virtual public A {}; class D: public B, public C {};Versuch einer statischen Umwandlung von A * nach B * Ich erhalte den folgenden Fehler: cannot convert from base A to ...
Seite 2 von 2