把结构pointer转成interface{}后怎么转回来

freboat · · 1047 次点击
你这里很奇怪, 我一直都是这么使用的毫无问题, 你不就是要转成*dog, 然后操作dog的东西么。 为啥要牵扯到指针呢? 如果类型不明就算拿到了pointer指针你接下来怎么玩呢? 转化不了具体数据类型的指针就是一个数字而已。 你如果说这里可能是dog, 也可能是cat是要实现动态判断吗? 你可以用swith type这种经典的用法 switch intf.(type) { case *Dog: dog := intf.(*Dog) case *Cat: cat:= intf.(*Cat) default: doSomeDefaultThing() } 楼主是C或者C++转过来的吗?思路有点奇特。
#5