go map slice 做参数

参考:
https://www.cnblogs.com/snowInPluto/p/7477365.html

func maptest1(m map[string]string){
    m["1"]="111"
}

func maptest2(m *map[string]string){
    (*m)["2"]="222"
}

func maptest3(m map[string]string){
    m=map[string]string{"3":"333"}
}

func maptest4(m *map[string]string){
    //mm:=map[string]string{"4":"444"}
    //*m=mm//这个地方不要写成&mm,go的这种方式相当于指针,而不是引用
    *m=(map[string]string{"4":"444"})
    //(*m)["4"]="444"
}

func mapTest(){
    fmt.Println("Map Test:")
    m:=map[string]string{"b":"bbb"}
    fmt.Println(m)
    maptest1(m)
    fmt.Println(m)
    maptest2(&m)
    fmt.Println(m)
    maptest3(m)
    fmt.Println(m)
    maptest4(&m)
    fmt.Println(m)
}


/* output
Map Test:
map[b:bbb]
map[b:bbb 1:111]
map[b:bbb 1:111 2:222]
map[b:bbb 1:111 2:222]
map[4:444]
*/
阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/harryhare/article/details/80347353
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭