次の方法で共有


コンパイラ エラー C2749

'type': /clr:safe を伴うマネージド クラスへのハンドルのみをスローまたはキャッチできます

/clr:safe を使用する場合は、参照型のみをスローまたはキャッチできます。

詳細については、「/clr (共通言語ランタイムのコンパイル)」を参照してください。

次の例では 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 ^){}
}