Partilhar via


Erro do compilador C2382

«Função» : redefinição; diferentes especificações de exceção

Observações

Esse erro indica que uma sobrecarga de função foi tentada somente na especificação de exceção.

Por padrão, o compilador considera uma noexcept especificação como equivalente a uma throw() ou throw(some_type) especificação. Em /Za, esta verificação é mais rigorosa.

Para resolver esse problema, altere todas as declarações e definições da função (ou a sobrecarga de função específica) para usar a mesma especificação de exceção.

Example

O exemplo a seguir gera C2382:

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

Consulte também

/Za (Desativar extensões de idioma)