package main
import "fmt"
func sumandproduct(A, B int) (int, int) {
return A + B, A * B
}
func main() {
x := 3
y := 4
xPLUSy, xTIMEy := sumandproduct(x, y)
fmt.Printf("%d+%d = %d\n", x, y, xPLUSy)
fmt.Printf("%d*%d =%d\n", x, y, xTIMEy)
}
上面的例子我们可以看到返回了两个参数,当然我们也可以命名返回参数的变量,这个例子里面只是有了两个类型,我们有可以改成如下的定义,然后返回的时候不用带上变量名,因为直接在函数里面初始化了。但你的函数如果是导出的,使用命名返回值,这样代码更加简洁
func sumandproduct(A,B int)(add int ,multiplied int) {
add = A +B
multiplied = A *B
return
}
go函数支持变参,接受变参的函数是有着不定数量的参数的。为了做到这点,首先需要定义函数使其接受参数,
fun myfunc(agr ...int){}
age ...int 告诉go这个函数接受不定数量的参数。注意,这些参数类型全部都是int
for _,n := range arg {
fmt.printf("And the number is : %d\n",n)
}
传真与传指针
当我们传