• 请不要在回答技术问题时复制粘贴 AI 生成的内容
GjriFeu
V2EX  ›  程序员

Golang 语法问题

  •  
  •   GjriFeu · Nov 9, 2016 · 3791 views
    This topic created in 3649 days ago, the information mentioned may be changed or developed.

    func (c *Client) Do(req *Request) (resp *Response, err error)

    ( c *Client )加在这里是什么意思啊 // net/http 包中的方法 初学 Go ,望各位指导

    Supplement 1  ·  Nov 14, 2016
    - -
    go 中一个文件想要引用另一个文件中的函数怎么写
    18 replies  •  2016-11-14 17:32:50 +08:00
    JoshuaJin
    JoshuaJin
    Nov 9, 2016
    1
    函数定义类型, 即这个函数是定义在某个类型上的。如你举的这个例子,可以使用如下代码调用这个函数:
    var c *Client
    .......
    c.Do(req, resp)
    goophy
    goophy
    Nov 9, 2016
    2
    Do 是 *Client 实例的方法。
    ```golang
    c := new(Client)
    //or
    c := &Client{}

    c.Do(...)
    ```
    kiwi95
    kiwi95
    Nov 9, 2016
    4
    这就是 golang 的 receiver 啊,为类型定义方法,或者说绑定方法 https://tour.golang.org/methods/3
    GjriFeu
    GjriFeu
    OP
    Nov 9, 2016
    5
    @JoshuaJin
    @goophy
    奥懂了谢谢
    jerray
    jerray
    Nov 9, 2016
    6
    我觉得写成这样你就明白了:

    ```golang
    func Do(c *Client, req *Request) (resp *Response, err error)
    ```
    GjriFeu
    GjriFeu
    OP
    Nov 9, 2016
    7
    @kiwi95 这个解释满分
    GjriFeu
    GjriFeu
    OP
    Nov 9, 2016
    8
    @jerray 像 C++的 this 指针么。。
    palmers
    palmers
    Nov 9, 2016
    9
    golang 的语法好新奇呀
    GjriFeu
    GjriFeu
    OP
    Nov 9, 2016
    10
    @palmers 看着有点别扭
    pathletboy
    pathletboy
    Nov 9, 2016
    11
    @GjriFeu 从 c++角度看,本质就是 this 指针,可以自定义名。
    palmers
    palmers
    Nov 9, 2016
    12
    @GjriFeu 恩恩 尤其是从 javascript java python 这些语言的角度看 真的很别扭
    janxin
    janxin
    Nov 9, 2016 via iPhone
    13
    @palmers golamg 没有类
    maomaomao001
    maomaomao001
    Nov 9, 2016 via Android
    14
    这写法~~怎么感觉比 C 还难
    mingyun
    mingyun
    Nov 9, 2016
    15
    初学 golang 也感觉这语言好怪异
    bluefalconjun
    bluefalconjun
    Nov 10, 2016
    16
    这是 method 扩展可以加入 Interface
    这部分虽然有点绕... 但是很有用啊
    beiping96
    beiping96
    Nov 10, 2016
    17
    GjriFeu
    GjriFeu
    OP
    Nov 14, 2016
    18
    up.
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   910 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 46ms · UTC 20:21 · PVG 04:21 · LAX 12:21 · JFK 15:21
    ♥ Do have faith in what you're doing.