Erreur du compilateur C2687
'type' : exception-déclaration ne peut pas être 'void' ou désigner un type incomplet ou un pointeur ou une référence à un type incomplet
Pour qu’un type fait partie d’une déclaration d’exception, il doit être défini et non vide.
L’exemple suivant génère l’erreur C2687 :
// C2687.cpp
class C;
int main() {
try {}
catch (C) {} // C2687 error
}
Résolution possible :
// C2687b.cpp
// compile with: /EHsc
class C {};
int main() {
try {}
catch (C) {}
}