为什么这不是类型不匹配?
来自:https : //golang.org/ref/spec#Assignability
在以下任何一种情况下,值 x 可分配给 T 类型的变量(“x 可分配给 T”): ...剪掉 ... x 的类型 V 和 T 具有相同的基础类型,并且至少有 V 或 T 之一不是命名类型。...剪...
那是因为 N[] 的基础类型是 N[] 而不是命名类型吗?
其背后的原理是什么?
package main
import "fmt"
type N []N
func main() {
n := make([]N, 1)
fmt.Printf("%T\n", n)
fmt.Printf("%T\n", n[0])
n[0] = n
//fmt.Println(n)
}
*Output:*
[]main.N
main.N
GCT1015
相关分类