页首Html代码

返回顶部

golang 无法将Slice类型[]a 转换为 Slice[]b

    因为我想做一个通用的Slice方法,AnySlice,但是将AnySlice定义为[]interface{ } 转换到别的类型,或者相互转换的时候都是会报错。

 

这是golang比较恶心人的一个地方了,不能做多层继承。

其实或许也是可以的,那就是要善用 unsafe.Pointer 和reflect 深层次的对象了,而不是简单的做 类型断言,类型转换了。

 

type AnySlice 定义为 interface{ } ,每次调用的时候都去判断 reflect.Type 是否是reflect.Slice 这种方式,简直是醉了.

 

对于上述两个概念的深层次运用我还需要继续学习!

posted @ 2018-08-17 19:39  ayanmw  阅读(1286)  评论(0编辑  收藏  举报

页脚Html代码