小编Rad*_*der的帖子

为什么结构中"[0] byte"的位置很重要?

[0]byte在golang中不应占用任何内存空间.但这两种结构有不同的尺寸.

type bar2 struct {
    A int
    _ [0]byte
}

type bar3 struct {
    _ [0]byte
    A int   
}
Run Code Online (Sandbox Code Playgroud)

那么为什么[0]byte这里的事情的位置呢?

顺便说一句,我使用unsafe.Sizeof()方法来检查结构大小.查看完整示例.

memory struct sizeof padding go

3
推荐指数
1
解决办法
140
查看次数

标签 统计

go ×1

memory ×1

padding ×1

sizeof ×1

struct ×1