2022-08-27:以下go语言代码输出什么?A:0;B:panic;C:7;D:不清楚。
package main
import (
"fmt"
)
func main() {
a := make([]int, 20)
a = []int{7, 8, 9, 10}
b := a[15:16]
fmt.Println(b)
}
答案选B。a 被重新赋值为 []int{7, 8, 9, 10},之前 make 创建的 slice 跟 a 没有任何关系了。因此 a15:16 肯定会越界,所以 panic。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。