slice类型和sliceheader类型不能互相显式转换吗?

ddxx11223 · 2017-10-10 06:31:44 · 1432 次点击

嗯,谢谢回答。sliceheader是个有三个成员变量的结构体,那slice内部是什么样子的?你说的这个具名类型存在的意义是啥?就只是为了这个sh := (*reflect.SliceHeader)(unsafe.Pointer(&s)) ?

#2
更多评论

根据 go 的语法,一个 具名类型和 slice,这样强转肯定不行啊,编译器不允许

#1

slice 是编译器实现的,虽然内部结构和 sliceheader 类似。文档有说明,SliceHeader 在反射包中,是 slice 运行时的表示。

#3