我有一些不同的结构,例如在偏移量 0Big处Small嵌入。我如何Small从代码中访问 的结构字段,它对类型一无所知Big,但已知它Small位于偏移量 0?
type Small struct {
val int
}
type Big struct {
Small
bigval int
}
var v interface{} = Big{}
// here i only know about 'Small' struct and i know that it is at the begining of variable
v.(Small).val // compile error
似乎编译器理论上能够操作这样的表达式,因为它知道Big类型Small在偏移量 0 处嵌入了类型。有没有办法做这样的事情(也许用unsafe.Pointer)?
四季花海
沧海一幻觉
HUWWW
相关分类