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


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

"поле": атрибут FieldOffset можно использовать только в контексте StructLayout(Explicit), в котором он обязателен

Поле было отмечено полем FieldOffset, которое допускается только в том случае, если StructLayout(Явный) действует.

Следующий пример приводит к возникновению ошибки C3270:

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

[ StructLayout(LayoutKind::Sequential) ]
// try the following line instead
// [ StructLayout(LayoutKind::Explicit) ]
public value struct MYUNION
{
   [FieldOffset(0)] int a;   // C3270
   // ...
};