Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis 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&
};