切片是指向陣列段的指標
切片是指向陣列的指標,包括段的長度和容量。它們表現為指標,並將其值分配給另一個切片,將分配記憶體地址。要將切片值複製到另一個切片值,請使用內建複製功能:func copy(dst, src []Type) int
(返回複製的專案數量)。
package main
import (
"fmt"
)
func main() {
x := []byte{'a', 'b', 'c'}
fmt.Printf("%s", x) // prints: abc
y := x
y[0], y[1], y[2] = 'x', 'y', 'z'
fmt.Printf("%s", x) // prints: xyz
z := make([]byte, len(x))
// To copy the value to another slice, but
// but not the memory address use copy:
_ = copy(z, x) // returns count of items copied
fmt.Printf("%s", z) // prints: xyz
z[0], z[1], z[2] = 'a', 'b', 'c'
fmt.Printf("%s", x) // prints: xyz
fmt.Printf("%s", z) // prints: abc
}