julia> type TestA
a::Int32
b::Int64
end
julia> type TestB
a::Int64
b::Int64
end
julia> sizeof(TestA),sizeof(TestB)
(16,16)
Run Code Online (Sandbox Code Playgroud)
我被证实sizeof(TestA)将是4 + 8 = 12.
我很好奇幕后的原理.
为什么TestA和TestB大小相同?
ps:http://docs.julialang.org/en/latest/devdocs/object/是一个很好的材料
字节对齐就是答案.文件指出:
请注意,所有对象都以4个字节的倍数分配,并与平台指针大小对齐.