Erreur du compilateur C3831

'member' : 'class' ne peut pas avoir un membre de données épinglé ou une fonction membre retournant un pointeur épinglé

pin_ptr (C++/CLI) a été utilisé de manière incorrecte.

Exemple

L’exemple suivant génère l’erreur C3831 :

// C3831a.cpp
// compile with: /clr
ref class Y
{
public:
   int i;
};

ref class X
{
   pin_ptr<int> mbr_Y;   // C3831
   int^ mbr_Y2;   // OK
};

int main() {
   Y y;
   pin_ptr<int> p = &y.i;
}