编译器错误 C2318

没有与该 catch 处理程序关联的 Try 块

定义一个 catch 处理程序,但其前面没有 try 块。

以下示例生成 C2318:

// C2318.cpp
// compile with: /EHsc
#include <eh.h>
int main() {
   // no try block
   catch( int ) {}   // C2318
}

可能的解决方法:

// C2318b.cpp
// compile with: /EHsc
#include <eh.h>
int main() {
   try{}
   catch( int ) {}
}