我在尋找幫助,瞭解如何訪問container.vector.Vector內部的結構字段。如何訪問屬於vector.Vector一部分的結構字段?
以下代碼:
package main
import "fmt"
import "container/vector"
func main() {
type Hdr struct {
H string
}
type Blk struct {
B string
}
a := new(vector.Vector)
a.Push(Hdr{"Header_1"})
a.Push(Blk{"Block_1"})
for i := 0; i < a.Len(); i++ {
fmt.Printf("a.At(%d) == %+v\n", i, a.At(i))
x := a.At(i)
fmt.Printf("%+v\n", x.H)
}
}
產生錯誤prog.go:22: x.H undefined (type interface { } has no field or method H)
除去線21和22產生:
a.At(0) == {H:Header_1}
a.At(1) == {B:Block_1}
那麼,究竟怎樣完成一個接入 'H' 或「B 「?看起來我需要將這些接口轉換爲結構,但是......我不知道。我很茫然。
感謝您的任何幫助。
的'容器/包裝VECTOR'以來一直2011-09-01棄用,是不是標準庫的一部分了。改爲使用切片和[SliceTricks](http://code.google.com/p/go-wiki/wiki/SliceTricks)。 – tux21b 2012-01-17 06:45:00