Compartir a través de


Error del compilador C2687

'tipo': la declaración de excepción no puede ser 'void' o denotar un tipo, puntero o referencia incompleta a un tipo incompleto

Para que un tipo forme parte de una declaración de excepción, debe definirse y no debe ser "void".

El ejemplo siguiente genera el error C2687:

// C2687.cpp
class C;

int main() {
   try {}
   catch (C) {}   // C2687 error
}

Posible solución:

// C2687b.cpp
// compile with: /EHsc
class C {};

int main() {
   try {}
   catch (C) {}
}