Avertissement du compilateur C4972
Mise à jour : novembre 2007
Message d'erreur
La modification ou le traitement direct du résultat d'une conversion unboxing comme lvalue est non vérifiable
Directly modifying or treating the result of an unbox operation as an lvalue is unverifiable
Le déréférencement d'un handle en type valeur, également connu sous le nom de conversion unboxing, puis son assignation, n'est pas vérifiable.
Pour plus d'informations, consultez Implicit Boxing.
Exemple
L'exemple suivant génère l'erreur C4972 :
// C4972.cpp
// compile with: /clr:safe
using namespace System;
ref struct R {
int ^ p; // a value type
};
int main() {
R ^ r = gcnew R;
*(r->p) = 10; // C4972
// OK
r->p = 10;
Console::WriteLine( r->p );
Console::WriteLine( *(r->p) );
}