struct的方法指针和非指针有什么区别吗?

otinn · · 4576 次点击
func (r *Rectangle) SetLenght (length int) { r.length = length }
#2
更多评论
对结果来说没有区别,值传递需要拷贝一下,指针传递快一点。 如果你要修改struct的话,那需要用指针。 func (r *Rectangle) SetLenght (length int) { r.length = length }
#1
我按照你的gopher 的模板函数 var funcMaps = template.FuncMap{ "len": func(s string) string { fmt.Println(s) return "1111" }, "assert": func(s string) string { fmt.Println(s) return "1111" }, } len可以调用,但是assert就报 Handler crashed with error template: topic.html:2: function "assert" not defined
#3