Поделиться через


Ошибка компилятора C3831

"member": "class" не может иметь закрепленный член данных или функцию-член, возвращающую указатель на закрепление

pin_ptr (C++/CLI) использовался неправильно.

Пример

Следующий пример приводит к возникновению ошибки 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;
}