Go语言中和C C++有很大不同在于函数可以具有多个返回值。
我们来看看写法
一个返回值写法
package main
import "fmt"
func return_sigle(r1 int,r2 int ) int{
fmt.Println("r1 = ", r1,"r2 = ",r2)
return 10
}
func main(){
test := return_sigle(10,100)
fmt.Println("test = " , test)
}
多个返回值 匿名
package main
import "fmt"
func return_sigle(r1 int,r2 int ) (int , int){
fmt.Println("r1 = ", r1,"r2 = ",r2)
return 10,20
}
func main(){
value1,value2 := return_sigle(10,100)
fmt.Println("value1 = " , value1 ,"value2 = " , value2);
}
多个返回值 有名
package main
import "fmt"
func return_sigle(r1 int,r2 int ) (va1 int ,va2 string){
fmt.Println("r1 = ", r1,"r2 = ",r2)
va1 = 12;
va2 = "hello world"
return va1,va2
}
func main(){
value1,value2 := return_sigle(10,100)
fmt.Println("value1 = " , value1 ,"value2 = " , value2);
}