Compartir a través de


Advertencia del compilador C4957

"cast": la conversión explícita de "cast_from" a "cast_to" no es comprobable

Comentarios

Una conversión producirá una imagen no comprobable.

Algunas conversiones son seguras (por ejemplo, un elemento static_cast que desencadena conversiones definidas por el usuario y un elemento const_cast). Se garantiza que un elemento safe_cast genera código comprobable.

Para más información, consulte Código puro y comprobable (C++/CLI).

La opción del compilador /clr:safe está en desuso en Visual Studio 2015 y no se admite en Visual Studio 2017.

Esta advertencia se emite como un error y puede deshabilitarse con pragma warning o la opción del compilador /wd .

Ejemplo

El ejemplo siguiente genera la advertencia C4957:

// C4957.cpp
// compile with: /clr:safe
// #pragma warning( disable : 4957 )
using namespace System;
int main() {
   Object ^ o = "Hello, World!";
   String ^ s = static_cast<String^>(o);   // C4957
   String ^ s2 = safe_cast<String^>(o);   // OK
}