GO言語ではスライスは参照渡しだと思っていました。しかし、次のコードがスライス c の内容を変更しないのはなぜでしょうか? 何か不足していますか?ありがとうございました。
package main
import (
"fmt"
)
func call(c []int) {
c = append(c, 1)
fmt.Println(c)
}
func main() {
c := make([]int, 1, 5)
fmt.Println(c)
call(c)
fmt.Println(c)
}
印刷された結果は次のとおりです。
[0] [0 1] [0]
期待している間に
[0] [0 1] [0 1]