Есть два способа определить эту структуру, которую я хочу передать в качестве аргумента функции pinvoke. Я хотел бы знать, в чем разница между 2В чем разница между этими двумя структурами
[StructLayout(LayoutKind.Sequential)]
public struct Rect {
public int left;
public int top;
public int right;
public int bottom;
}
[StructLayout(LayoutKind.Explicit)]
public struct Rect {
[FieldOffset(0)] public int left;
[FieldOffset(4)] public int top;
[FieldOffset(8)] public int right;
[FieldOffset(12)] public int bottom;
}
Из определений макетов я нашел here, и не должны выглядеть так же в памяти? Любые преимущества одного над другим?
Первый - нормальный, а второй нет. –