問題在于go func。錯誤訊息是go 中的運算式必須是函式呼叫
listener, _ := gostream.Listen(host1, p2phttp.DefaultP2PProtocol)
defer listener.Close()
go func() {
http.HandleFunc("/hello", func(w http.ResponseWriter, r *http.Request) {
w.Write([]byte("Hi!"))
})
server := &http.Server{}
server.Serve(listener)
}
錯誤是
命令列引數
.\sever.go:18:5: go 中的運算式必須是函式呼叫
uj5u.com熱心網友回復:
如果您決定創建一個匿名函式,那么
listener, _ := gostream.Listen(host1, p2phttp.DefaultP2PProtocol)
defer listener.Close()
go func() {
http.HandleFunc("/hello", func(w http.ResponseWriter, r *http.Request) {
w.Write([]byte("Hi!"))
})
server := &http.Server{}
server.Serve(listener)
}()
命名函式:
listener, _ := gostream.Listen(host1, p2phttp.DefaultP2PProtocol)
defer listener.Close()
go Greet()
func Greet() {
http.HandleFunc("/hello", func(w http.ResponseWriter, r *http.Request) {
w.Write([]byte("Hi!"))
})
server := &http.Server{}
server.Serve(listener)
}
uj5u.com熱心網友回復:
您忘記呼叫(呼叫)匿名函式。因此,錯誤:go 中的運算式必須是函式呼叫。
go func() { fmt.Prinln("Im an IIFE") }() // note the parenthesis
這稱為立即呼叫函式運算式 (IIFE)。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/422121.html
標籤:
上一篇:在Go程式中使用cgo共享庫
