我是從 Python 背景來到 Golang 的,我正在努力思考各種新概念。我遇到的一件事是 net.go 中的這個函數:func (c *conn) ok() bool { return c != nil && c.fd != nil }該函數被多個 net.go 方法調用,例如 conn.Read:// Read implements the Conn Read method.func (c *conn) Read(b []byte) (int, error) { if !c.ok() { return 0, syscall.EINVAL}我試圖了解如何ok()在 conn 上調用該方法,盡管它ok()似乎不是conn 的接口。當然,我似乎無法ok()從我的客戶端代碼中調用:func main() {conn, err := net.Dial("tcp", "www.reddit.com:80")if err != nil { os.Exit(-1)}fmt.Println(&conn.ok())}輸出:./server.go:14:22: conn.ok undefined (type net.Conn has no field or method ok)任何指針贊賞...
- 3 回答
- 0 關注
- 183 瀏覽
添加回答
舉報
0/150
提交
取消