Udostępnij za pomocą


Ostrzeżenie kompilatora C4972

Bezpośrednie modyfikowanie lub traktowanie wyniku operacji rozpaku jako lvalue jest nieweryfikowalne

Uwagi

Dereferencing uchwytu do typu wartości, znany również jako rozpakuj, a następnie przypisywanie do niego nie jest weryfikowalne.

Aby uzyskać więcej informacji, zobacz Boxing.

Przykład

Poniższy przykład generuje kod 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) );
}