package main
import "fmt"
type I int
type M map[string]interface{}
type M2 map[string]interface{}
func main() {
var m M = M{"hello": "world"}
printM(m) //可以
var num I = 123
printI(num) //不行的
printM2(m) //不行的
}
func printI(i int) {
fmt.Println(i)
}
func printM(m map[string]interface{}) {
fmt.Println(m)
}
func printM2(m M2) {
fmt.Println(m)
}
众所周知, I 和 int 是两个类型,但是为啥 M 能直接被当做 map[string]interface{} ?
