我关于不同的命名返回值与正常返回值的问题
我的代码
package main
import "fmt"
func main() {
f := fmt.Println
f(a())
f(b())
}
func a() int {
i := 0
defer func() {
i += 1
fmt.Println("a defer : ", i)
}()
return i
}
func b() (i int) {
i = 0
defer func() {
i += 1
fmt.Println("b defer : ", i)
}()
return i
}
Run Code Online (Sandbox Code Playgroud)
结果:
a函数返回0
b功能reutrn 1
为什么?
type Person struct {
ID int `json:"id"`
}
type PersonInfo []Person
type PersonInfo2 [] struct {
ID int `json:"id"`
}
Run Code Online (Sandbox Code Playgroud)
PersonInfo和PersonInfo2之间是否有区别?