Sdílet prostřednictvím


Chyba kompilátoru C2382

'function' : redefinition; různé specifikace výjimek

Poznámky

Tato chyba značí, že došlo k pokusu o přetížení funkce pouze ve specifikaci výjimky.

Ve výchozím nastavení kompilátor považuje noexcept specifikaci za ekvivalentní throw() specifikaci nebo throw(some_type) specifikaci. Pod /Za, tato kontrola je přísnější.

Chcete-li tento problém vyřešit, změňte všechny deklarace a definice funkce (nebo konkrétní přetížení funkce) tak, aby používaly stejnou specifikaci výjimky.

Příklad

Následující příklad vygeneruje C2382:

// C2382.cpp
// compile with: /Za /c
void f1(void) noexcept {}
void f1(void) {}   // C2382
void f2(void) throw() {}   // OK

Viz také

/Za (Zakázání jazykových rozšíření)