Partager via


Erreur du compilateur C2749

'type' : peut uniquement lever ou intercepter un handle dans une classe managée avec /clr :safe

Lorsque vous utilisez /clr :safe, vous ne pouvez lever ou intercepter qu’un type de référence.

Pour plus d’informations, consultez l’article /clr (Compilation pour le Common Language Runtime).

Exemple

L’exemple suivant génère l’erreur C2749 :

// C2749.cpp
// compile with: /clr:safe
ref struct MyStruct {
public:
   int i;
};

int main() {
   MyStruct ^x = gcnew MyStruct;

   // Delete the following 4 lines to resolve.
   try {
      throw (1);   // C2749
   }
   catch(int){}

   // OK
   try {
      throw (x);
   }
   catch(MyStruct ^){}
}