我记得看过,Go的设计要求是err!=nil的时候,前面的值部分是一个无效的值,就是说值可以是空值也可以不是。
 我自己在写代码的时候,也遵循这种规范,同时因为我基本都用Named Result方式(不想每次return都得考虑哪个空哪个不空),所以以下代码可以更好的说明,为什么前值是无效的: type Info struct { 	A string 	B int 	C bool } func do() (rsp Info, err error) { 	a, err := doA() 	if err != nil { 		return // 等价于 {…。
