摘要:
net托管环境下struct实例字段的内存布局(Layout)和大小(Size) 在C/C++中,struct类型中的成员的一旦声明,则实例中成员在内存中的布局(Layout)顺序就定下来了,即与成员声明的顺序相同,并且在默认情况下总是按照结构中占用空间最大的成员进行对齐(Align);当然我们也可以通过设置或编码来设置内存对齐的方式,有关C/C++中(设置)内存对齐的讨论,可以参考我以前写的一篇面试手记《总结面试时没有回答上的设置内存对齐方式问题》。 然而在.net托管环境中,CLR提供了更自由的方式来控制struct中Layout:我们可以在定义struct时,在struct上运用Stru 阅读全文