Megosztás a következőn keresztül:


C2743 fordítási hiba

"típus": nem lehet natív típust elkapni __clrcall destruktor vagy másoló konstruktor használatával

Megjegyzések

A /clr használatával összeállított modul megpróbált elkapni egy natív típusú kivételt, amelyben a típus destruktora vagy a másolási konstruktora hívási konvenciót alkalmaz __clrcall.

A /clr használatával történő fordítás esetén a kivételkezelés elvárja, hogy a tagfüggvények natív típusban __cdecl legyenek, és ne __clrcall. A hívó konvenciót használó __clrcall tagfüggvényekkel rendelkező natív típusok nem ragadhatók meg a /clr használatával összeállított modulban.

További információ: /clr (Common Language Runtime Compilation).

példa

Az alábbi példa C2743-at hoz létre.

// C2743.cpp
// compile with: /clr
public struct S {
   __clrcall ~S() {}
};

public struct T {
   ~T() {}
};

int main() {
   try {}
   catch(S) {}   // C2743
   // try the following line instead
   // catch(T) {}

   try {}
   catch(S*) {}   // OK
}