Go 切片的拷贝 copy()

 

demo.go(切片的拷贝,copy()):

package main

import "fmt"

func main() {
	// 定义切片。
	slice := []int{0, 1, 2, 3, 4}
	s := make([]int, 5)

	// 切片的拷贝
	copy(s, slice)  // 拷贝
	fmt.Println(s) // [0 1 2 3 4]
	fmt.Printf("%p \n",slice)  // 0xc000072030
	fmt.Printf("%p \n",s)    // 0xc000072060  拷贝后的切片s与原切片slice的地址不同
	// 修改切片s并不会影响slice
}

 

你可能感兴趣的:(Go基础)