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


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

"член": недопустимое значение "значение" для атрибута FieldOffset

Отрицательное число было передано в атрибут FieldOffset .

В следующем примере возникает ошибка С3271:

// C3271.cpp
// compile with: /clr /c
using namespace System;
using namespace System::Runtime::InteropServices;

[StructLayout(LayoutKind::Explicit)]
value class MyStruct1 {
   public: [FieldOffset(0)] int a;
   public: [FieldOffset(-1)] long b;   // C3271
};