GO函数定义为什么和书上讲的不一样啊??

sky_9933 sky_9933 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区

go的函数定义是:

func function_name( [parameter list] ) [return_types] {
   函数体
}

如下函数为什么长这样呢? 看不明白!!

func (c *connection) clientHandshake(dialAddress string, config *ClientConfig) error {

    if config.ClientVersion != "" {

        c.clientVersion = []byte(config.ClientVersion)

    } else {

        c.clientVersion = []byte(packageVersion)

    }

    var err error

    c.serverVersion, err = exchangeVersions(c.sshConn.conn, c.clientVersion)

    if err != nil {

        return err

    }

 

    c.transport = newClientTransport(

        newTransport(c.sshConn.conn, config.Rand, true /* is client */),

        c.clientVersion, c.serverVersion, config, dialAddress, c.sshConn.RemoteAddr())

    if err := c.transport.waitSession(); err != nil {

        return err

    }

 

    c.sessionID = c.transport.getSessionID()

    return c.clientAuthenticate(config)

}

...全文

相关推荐

评论 3
收藏 已收藏
分享
返回顶部
sky_9933
go语言 2,351 成员 924 内容