D中的自动字段顺序重排

时间:2014-01-12 12:08:48

标签: class struct alignment field d

我刚刚在http://dlang.org/pretod.html#pragmapack引用时看到了以下内容:

对于D ,无需调整对齐(实际上,编译器可以自由重新排列数据字段以获得最佳布局,就像编译器会重新排列堆栈帧上的局部变量一样)。对于映射到外部定义的数据结构的D结构,需要使用:

进行处理
struct Foo
{
    align (4):  // use 4 byte alignment
    ...
}

这是否意味着结构域不会像上面提到的类字段那样重新排列?

1 个答案:

答案 0 :(得分:3)

是的,虽然我认为当前的实现不会重新排列类字段。