我注意到Golang的append()有一些奇怪的行为.我理解切片容量如何影响新的底层数组是否被分配的基本概念,但是为什么我是否使用了fmt.Println()追加已发生影响追加结果的AFTER?
package main
import "fmt"
func main() {
a := []byte("AAA")
b := append(a, []byte("BBB")...)
fmt.Println(" a: ", string(a), " b: ", string(b))
c := append(a, []byte("CCC")...)
fmt.Println(" a: ", string(a), " b: ", string(b), " c: ", string(c))
fmt.Println(&b) //try commenting this out and in and running the program
}
Run Code Online (Sandbox Code Playgroud)
链接到运行代码:https://play.golang.org/p/jJ-5ZxTBIn
go ×1