Udostępnij za pomocą


Ostrzeżenie kompilatora C4959

program nie może zdefiniować niezarządzanej struktury "type" w pliku /clr:safe, ponieważ uzyskiwanie dostępu do jego składowych daje nieweryfikowalny kod

Uwagi

Uzyskanie dostępu do elementu członkowskiego typu niezarządzanego spowoduje wygenerowanie obrazu niezweryfikowalnego (peverify.exe).

Aby uzyskać więcej informacji, zobacz Pure and Verifiable Code (C++/CLI).

Opcja /clr:safe compiler jest przestarzała w programie Visual Studio 2015 i nieobsługiwana w programie Visual Studio 2017.

To ostrzeżenie jest wystawiane jako błąd i można je wyłączyć z ostrzeżeniem pragma lub /wd opcji kompilatora.

Przykład

Poniższy przykład generuje kod C4959:

// C4959.cpp
// compile with: /clr:safe

// Uncomment the following line to resolve.
// #pragma warning( disable : 4959 )
struct X {
   int data;
};

int main() {
   X x;
   x.data = 10;   // C4959
}