假设我有一个方法 http.HandleFunc
type HandlerFunc func(ResponseWriter, *Request)
我想将它包装在另一个相同类型的方法周围,如下所示:
func MyWrapper(res http.ResponseWriter, req *http.Request) {
// do stuff
AnotherMethod(res, req) // <- question refers to this line
// do more stuff
}
func AnotherMethod(res http.ResponseWriter, req *http.Request) {
// main logic
}
如果我做对了,当我打电话时,我将(的值)AnotherMethod(res, req)的副本传递res给AnotherMethod,这意味着该对象现在在内存中重复了。
有没有一种方法可以将指针传递res到AnotherMethod,然后在其中取消引用,以便不复制的值res?还是我不明白某事?
(使用指向res内部(的值)的指针AnotherMethod将不起作用,因为inhttp.ResponseWriter中所有方法的接收者都是值而不是指针)
慕莱坞森
相关分类