下面这段代码有什么问题
func (m map[string]string) Set(key string, value string) {
m[key] = value
}
func main() {
m := make(map[string]string)
m.Set("A", "One")
}
答案
编译失败
解释:Unnamed Type 不能作为方法的接收者。用 Named Type 来修复下代码
type MapType map[string]string
func (m MapType) Set(key string, value string) {
m[key] = value
}
func main() {
var m MapType = make(map[string]string)
m.Set("A", "One")
fmt.Println(m)
}
输出:map[A:One]