2016-06-18 9 views
1

利用可能なリストパッケージを使用して、構造体のリンクリストを実行しようとしています。私が手出力は、フォーム{0}や他の反復のために同じである構造体のフィールドにアクセスできない

package main 

import (
    "container/list" 
    "fmt" 
) 

type A struct{ 
    B int 
} 

func main() { 
    l := list.New() 
    for i:=0;i<5;i++ { 
     c := A{i} 
     l.PushFront(c) 
    } 

    for e := l.Front(); e != nil; e = e.Next() { 
     fmt.Println(e.Value) 
    } 

} 

- これは、以下のサンプルコードです。フィールドにアクセスして整数値を取得するにはどうすればよいですか?

答えて

1

リストアイテムをAに戻す必要があります。あなたはhereを実行しているのを見ることができます。

package main 

import (
    "container/list" 
    "fmt" 
) 

type A struct { 
    B int 
} 

func main() { 
    l := list.New() 
    for i := 0; i < 5; i++ { 
     c := A{i} 
     l.PushFront(c) 
    } 

    for e := l.Front(); e != nil; e = e.Next() { 
     v := e.Value.(A) 
     fmt.Println(v.B) 
    } 

} 
+0

私のような初心者のために大きな助けとなりました。 – ameyCU

-1

構造体にe.Valueでアクセスできますが、構造体の値にアクセスできません。 e.Value.Bを実行する必要があります

+0

私はそれを試みましたが、値が定義されていないというエラーが出ます。 – ameyCU

関連する問題