código muito simples e obtendo o erro C2712, não conseguia entender por que
Estou tendo problemas por um tempo comerror C2712: Cannot use __try in functions that require object unwinding
, depois de restringir o problema, fiquei com um código muito simples e não consigo entender por que ele causa esse erro. Estou usando o Visual Studio no Windows.
Estou compilando com / EHa (não uso / EHsc)
O motivo de eu usar__try/__except
e nãotry/catch
é porque eu quero capturar TODOS os erros e não quero que o programa falhe sob nenhuma circunstância, incluindo, por exemplo, a divisão por 0, que o try-catch não captura.
#include <string>
static struct myStruct
{
static std::string foo() {return "abc";}
};
int main ()
{
myStruct::foo();
__try
{ }
__except (true)
{ }
return 0;
}
resultado:
error C2712: Cannot use __try in functions that require object unwinding