初学者,有个问题请教

2019-12-23 15:14:31 +08:00
 diagram2048

看 batch ping 这个库有个写法不理解,代码如下:

//NewBatchPinger returns a new Pinger struct pointer, interval is default 1s, count default 5

func NewBatchPinger(addrs []string, privileged bool) (batachPinger *BatchPinger, err error) {

	var network string
	if privileged {
		network = "ip"
	} else {
		network = "udp"
	}

	batachPinger = &BatchPinger{
		interval:    time.Second,
		timeout:     time.Second * 100000,
		count:       5,
		network:     network,
		id:          getPId(),
		done:        make(chan bool),
		addrs:       addrs,
		mapIpPinger: make(map[string]*Pinger),
		mapIpAddr:   make(map[string]string),
	}

	return batachPinger, nil
}

函数里的这个 batachPinger 变量没有定义,为啥可以直接用'=',我自己参考写就报错

3088 次点击
所在节点    Go 编程语言
3 条回复
hdbzsgm
2019-12-23 15:19:19 +08:00
在 return val 里定义
AzadCypress
2019-12-23 15:23:18 +08:00
go 命名返回值
你自己搜一下这个
diagram2048
2019-12-23 15:28:49 +08:00
@AzadCypress 明白了,我自己写的名称不一样所以报错,多谢

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/631549

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX