package main
import (
"net/http"
)
func main() {
http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request){
w.Write([]byte("hello world"))
})
http.ListenAndServe(":8000", nil)
}
如果刪除了*
在http.Request
:爲什麼必須將http.Request參數作爲指針?
github.com/creating_web_app_go/main.go:8:不能使用FUNC字面(類型FUNC(http.ResponseWriter,http.Request))作爲類型func(http.ResponseWriter,* http.Request)參數http.HandleFunc
我對Go和指針都很陌生。
所以問題是, 爲什麼必須http.Request
是一個指針,而不是一個func literal
?任何人都可以用最簡單的方式解釋這個,也許可以參考源代碼?
爲什麼-1?這真的是一個很好的問題嗎? –
其實這是一個非常好的問題imo – Yar