阅读Marshal.SizeOf().它的定义说:The size returned is the size of the unmanaged object. The unmanaged and managed sizes of an object can differ.这是否意味着Marshal.SizeOf将返回定义大小,但不会返回实际的分配大小,因为可能有一些填充用于对齐?
例如:
struct MyStruct
{
char c;
}
Run Code Online (Sandbox Code Playgroud)
如果我使用的话,非托管对象(非托管大小)的大小将是1个字节,Marshal.SizeOf()但如果我使用,则托管对象(托管大小)可能是2或4个字节sizeof(.我对吗?