一次糟糕的golang面试体验

airun · 2019-08-04 23:32:39

这个面试官有点2b

#1
更多评论

这个面试官第二题肯定是错了。他测试少了

package main

import (
    "fmt"
    "time"
)

func main() {
    m := map[string]int{
        "a":1,
        "b":2,
        "c":3,
    }
    for k,v := range m  { 
        go func(kk * string,vv * int) {
            fmt.Printf(" %v , %v \n",*kk,*vv)
        }(&k,&v) //d
    }    // this is fine 3
    time.Sleep(1 * time.Second)
}

多运行几次能够得到三种不同结果

b,2 b,2 b,2

c,3 c,3 c,3

a ,1 a ,1 a ,1 ```

#2

想知道开始的3个问题如何回答?

#3