Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
"function" : redefinition; różne specyfikacje wyjątków
Uwagi
Ten błąd wskazuje, że przeciążenie funkcji zostało podjęto tylko w specyfikacji wyjątku.
Domyślnie kompilator uznaje specyfikację noexcept za równoważną throw() specyfikacji lub throw(some_type) . W obszarze /Zata kontrola jest bardziej rygorystyczna.
Aby rozwiązać ten problem, zmień wszystkie deklaracje i definicje funkcji (lub przeciążenie określonej funkcji), aby użyć tej samej specyfikacji wyjątku.
Przykład
Poniższy przykład generuje C2382:
// C2382.cpp
// compile with: /Za /c
void f1(void) noexcept {}
void f1(void) {} // C2382
void f2(void) throw() {} // OK