golang接口的强制转换

在golang中接口相当于一个万能对象,和c++的auto差不多,比如定义一个存任何对象的map:

type mymap map[int][interface{}]    //以int为key,值可以存任何类型

type mydata struct {
  id int
  name string
}



func main()
{
  mm:= make(mymap)
  data1:= mydata{id:1,name:"data1"}
  mm[1]=data1

  //访问元素
  if v,ok:= mm[1]; ok {
     fmt.Println(v.(mydata).name)  //这里用了到接口强制转换 v.(类型).val
  }
}

猜你喜欢

转载自blog.csdn.net/ltk80/article/details/83380240
今日推荐