为什么重复定义两个err变量不会报错?

来源:6-3 接口的定义和实现

mzzlvy

2019-04-07

	resp, err := http.Get(url)
	if err != nil {
		panic(err)
	}
	response, err := httputil.DumpResponse(resp, true)
	resp.Body.Close()
	if err != nil {
		panic(err)
	}

上面代码重复声明定义了两个err变量

写回答

1回答

ccmouse

2019-04-07

只要:=左边有一个新变量就行。这个设计是为了方便,不然第二行response那里就要写成

var response []byte

response err = httputil.DumpResponse(resp, true)

不好看

1
1
mzzlvy
非常感谢!
2019-04-07
共1条回复

Google资深工程师深度讲解Go语言 由浅入深掌握Go语言

语法+分布式爬虫实战 为转型工程师量身打造

5995 学习 · 1909 问题

查看课程