登录
首页 >  Golang >  Go问答

go面试题:为什么v.name都是博客?

来源:SegmentFault

时间:2023-03-11 09:31:04 351浏览 收藏

偷偷努力,悄无声息地变强,然后惊艳所有人!哈哈,小伙伴们又来学习啦~今天我将给大家介绍《go面试题:为什么v.name都是博客?》,这篇文章主要会讲到等等知识点,不知道大家对其都有多少了解,下面我们就一起来看一吧!当然,非常希望大家能多多评论,给出合理的建议,我们一起学习,一起进步!

问题内容

type student struct {
    name string
    age  int
}

func main() {
    m := make(map[string]*student)
    stus := []student{
        {name: "pprof.cn", age: 18},
        {name: "测试", age: 23},
        {name: "博客", age: 28},
    }

    for _, stu := range stus {
        m[stu.name] = &stu
    }
    for k, v := range m {
        fmt.Println(k, "=>", v.name)
    }
}

正确答案

https://draveness.me/golang/d...
__

for range 的 k,v 是固定的内存地址,只是循环的时候不断给它赋值,如果使用 &stu 那就是指向同一块内存地址。所以就会在最后一次赋值完成后,都是博客

今天关于《go面试题:为什么v.name都是博客?》的内容介绍就到此结束,如果有什么疑问或者建议,可以在golang学习网公众号下多多回复交流;文中若有不正之处,也希望回复留言以告知!

声明:本文转载于:SegmentFault 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>