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


C3821 fordítási hiba

"függvény": felügyelt típus vagy függvény nem használható nem felügyelt függvényekben

Megjegyzések

A beágyazott szerelvényt vagy setjmp-et tartalmazó függvények nem tartalmazhatnak értéktípusokat vagy felügyelt osztályokat. A hiba kijavításához távolítsa el a beágyazott szerelvényt, vagy setjmp távolítsa el a felügyelt objektumokat.

A C3821 akkor is előfordulhat, ha egy vararg függvényben automatikus tárolást próbál használni. További információ: Változó argumentumlisták (...) (C++/CLI) és C++ Veremszemantika a referenciatípusokhoz.

Példák

Az alábbi példa C3821-et hoz létre.

// C3821a.cpp
// compile with: /clr /c
public ref struct R {};
void test1(...) {
   R r;   // C3821
}

Az alábbi példa C3821-et hoz létre.

// C3821b.cpp
// compile with: /clr
// processor: /x86
ref class A {
   public:
   int i;
};

int main() {
   // cannot use managed classes in this function
   A ^a;

   __asm {
      nop
   }
} // C3821