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


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

 

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

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

 

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

 

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


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM