Поделиться через


Ошибка компилятора C2687

"type": объявление исключения не может быть "void" или обозначает неполный тип или указатель или ссылку на неполный тип

Чтобы тип был частью объявления исключения, он должен быть определен и не является пустым.

Следующий пример приводит к возникновению ошибки C2687:

// C2687.cpp
class C;

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

Возможное решение

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

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