为了账号安全,请及时绑定邮箱和手机立即绑定

如何从嵌套函数修改 struct boolean?

如何从嵌套函数修改 struct boolean?

Go
慕娘9325324 2023-05-22 17:02:28
从嵌套函数内部设置结构不起作用。我已经尝试过文档中的示例:https ://play.golang.org/p/Pw9f20zwjatype myStruct struct {    abrakadabra bool }func (f *ChangeMe) SetName(abrakadabra bool) {    f.abrakadabra = true}func something() {    var flag ChangeMe    f := new(ChangeMe)    copy := func(r io.ReadCloser, w io.WriteCloser) {        //...some code..        if err != nil {             f.SetName(true)            log.Println(flag.abrakadabra)        }    } 在日志打印中 - abrakadabra 布尔值仍然为 false(初始值),为什么它不更改为 true?
查看完整描述

1 回答

?
莫回无

TA贡献1865条经验 获得超7个赞

您在 f 上运行 SetName,然后打印标志中的值。f 和 flag 是 ChangeMe 类型的两个不同值。


f.SetName(true)

log.Println(f.abrakadabra)

或者


flag.SetName(true)

log.Println(flag.abrakadabra)


查看完整回答
反对 回复 2023-05-22
  • 1 回答
  • 0 关注
  • 148 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信