go 类型转换(interface 类型的转换)
2020-04-02 本文已影响0人
一抹黑黑黑
go 在做类型转换时,报错: cannot convert m (type interface {}) to type Msg: need type assertion
原因: go 的在 interface 类型转换的时候, 不是使用类型的转换, 而是使用
t,ok := i.(T)
例子:
//处理网络消息
func ProcessMsg(m interface{}){
//var a interface{} = m
//Msg(m)
msg := m.(*Msg)