Teilen über


Compilerfehler C2715

'type': Dieser Typ kann nicht ausgelöst oder erfasst werden.

Bemerkungen

Werttypen sind ungültige Argumente bei Verwendung der Ausnahmebehandlung in verwaltetem Code (siehe Ausnahmebehandlung für weitere Informationen).

Beispiel

Im folgenden Beispiel wird C2715 generiert und veranschaulicht, wie sie behoben werden:

// C2715a.cpp
// compile with: /clr
using namespace System;

value struct V {
   int i;
};

void f1() {
   V v;
   v.i = 10;
   throw v;   // C2715
   // try the following line instead
   // throw ((V^)v);
}

int main() {
   try {
      f1();
   }

   catch(V v) { if ( v.i == 10 ) {   // C2715
   // try the following line instead
   // catch(V^ pv) { if ( pv->i == 10 ) {
         Console::WriteLine("caught 10 - looks OK");
      }
      else {
         Console::WriteLine("catch looks bad");
      }
   }
   catch(...) {
      Console::WriteLine("catch looks REALLY bad");
   }
}