Anmerkung
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen, dich anzumelden oder die Verzeichnisse zu wechseln.
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen , die Verzeichnisse zu wechseln.
'C2::fgrv': Kovariant gibt mit mehreren oder virtuellen Vererbungen zurück, die für Varargs-Funktionen nicht unterstützt werden
Bemerkungen
Kovariante Rückgabetypen werden in Visual C++ nicht unterstützt, wenn eine Funktion variable Argumente enthält.
Um diesen Fehler zu beheben, definieren Sie entweder Ihre Funktionen, sodass sie keine variablen Argumente verwenden oder die Rückgabewerte für alle virtuellen Funktionen gleich machen.
Beispiel
Im folgenden Beispiel wird C2688 generiert:
// C2688.cpp
struct G1 {};
struct G2 {};
struct G3 : G1, G2 {};
struct G4 {};
struct G5 {};
struct G6 : G4, G5 {};
struct G7 : G3, G6 {};
struct C1 {
virtual G4& fgrv(int,...);
};
struct C2 : C1 {
virtual G7& fgrv(int,...); // C2688, does not return G4&
};