Udostępnij przez


Błąd kompilatora C2346

Nie można skompilować funkcji jako natywnej: przyczyna

Uwagi

Kompilator nie mógł skompilować funkcji w bibliotece MSIL.

Aby uzyskać więcej informacji, zobacz managed, unmanaged i /clr (Kompilacja środowiska uruchomieniowego języka wspólnego).

Aby poprawić ten błąd

  1. Usuń kod w funkcji, której nie można skompilować do biblioteki MSIL.

  2. Nie kompiluj modułu z /clr lub oznacz funkcję jako niezarządzaną za pomocą niezarządzanego pragma.

Przykład

Poniższy przykład generuje kod C2346.

// C2346.cpp
// processor: x86
// compile with: /clr
// C2346 expected
struct S
{
   S()
   {
      { __asm { nop } }
   }
   virtual __clrcall ~S() { }
};

int main()
{
   S s;
}