func test1() (data string, err error) {
data, err := "abc", errors.New("test")
return data, err
}
func test2() (data string, err error) {
fd, err := os.Open("tttt.go")
if err != nil {
panic("error")
}
}
函数返回值名即 data, err 到底起到一个什么作用?减少声明么?
data, err := "abc", errors.New("test")
// 重复声明错误
fd, err := os.Open("tttt.go")
// 无重复声明错误?
按我的理解第二段也应该报err的重复声明错误,但是结果却没报,不太懂这里是为什么?
有疑问加站长微信联系(非本文作者)

左边只要有一个是新定义的就不会报错。
@channel 感觉是这样