Avertissement du compilateur (niveau 1) C4965
zone implicite d’entier 0 ; utiliser nullptr ou un cast explicite
Visual C++ offre une boxe implicite des types valeur. Une instruction qui a entraîné une affectation Null à l’aide de Extensions managées pour C++ devient désormais une affectation à un int boxed.
Pour plus d'informations, consultez Boxing.
Exemple
L’exemple suivant génère l’erreur C4965.
// C4965.cpp
// compile with: /clr /W1
int main() {
System::Object ^o = 0; // C4965
// the previous line is the same as the following line
// using Managed Extensions for C++
// System::Object *o = __box(0);
// OK
System::Object ^o2 = nullptr;
System::Object ^o3 = safe_cast<System::Object^>(0);
}