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.
'Funktion': Neudefinition; unterschiedliche Ausnahmespezifikationen
Hinweise
Dieser Fehler gibt an, dass nur für die Ausnahmespezifikation eine Funktionsüberladung versucht wurde.
Standardmäßig betrachtet der Compiler eine noexcept Spezifikation als gleichwertig mit einer throw() oder throw(some_type) einer Spezifikation. Unter /Za, ist diese Prüfung strenger.
Um dieses Problem zu beheben, ändern Sie alle Deklarationen und Definitionen der Funktion (oder die spezifische Funktionsüberladung), um dieselbe Ausnahmespezifikation zu verwenden.
Beispiel
Im folgenden Beispiel wird C2382 generiert:
// C2382.cpp
// compile with: /Za /c
void f1(void) noexcept {}
void f1(void) {} // C2382
void f2(void) throw() {} // OK