账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    struct 中成员的顺序不同,导致内存占用不同。那成员类型的定义顺序有什么遵守的原则吗?
    55
    0

    背景:64位操作系统上

    示例:定义2个成员相同的 stuct 对象(顺序不同),打印

    package main
    
    import "unsafe"
    
    type A struct {
        X bool
        Y float64
        Z int16
    }
    
    type B struct {
        Y float64
        X bool
        Z int16
    }
    
    func main() {
        print("A: ")
        println(unsafe.Sizeof(A{}))
        print("B: ")
        println(unsafe.Sizeof(B{}))
    }
    

    输出结果:

    A: 24
    B: 16

    结论:
    所以在定义 sturct 成员的时候,随意的定义可能导致内存占用不同。那想问的是在定义时有什么可参考的吗?

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部