1. ホーム
  2. arrays

[解決済み] golang append() は評価されるが使用されない

2023-06-18 15:17:46

質問

func main(){
     var array [10]int
     sliceA := array[0:5]
     append(sliceA, 4)
     fmt.Println(sliceA)
}

エラー : append(sliceA, 4) は評価されましたが、使用されていません。

なぜなんでしょうか?スライスの追加操作が実行されていません...。

どのように解決するのですか?

参考にしてください。 スライスへの追加とコピー

Goでは、引数は値で渡されます。

典型的な append の使い方は

a = append(a, x)

書く必要があります。

func main(){
    var array [10]int
    sliceA := array[0:5]
    // append(sliceA, 4)  // discard
    sliceA = append(sliceA, 4)  // keep
    fmt.Println(sliceA)
}

出力 :

[0 0 0 0 0 4]

お役に立てれば幸いです。