直接引用数据的内存, 如果 val
为指针,则会产生指针的拷贝,依旧可以修改集合中的原值
想要直接改变原数组内容,直接用for循环最简单。。
package main
import (
"fmt"
)
func main() {
ch := make(chan *int, 5)
//sender
input := []int{1,2,3,4,5}
go func(){
for k,_ := range input {
ch <- &input[k]
}
close(ch)
}()
//receiver
for v := range ch {
fmt.Println(*v)
}
}