Go基礎 函式多返回值特性

2022-07-24 18:12:10 字數 748 閱讀 7764

之前在寫python程式的時候,驚嘆於它支援多返回值的特性帶來的便利性。在學習go的時候,發現go也擁有多返回值的特性。

建立乙個多返回值的方法:

func getacar() (brand,model,capacity,color string

)

呼叫:

brand,model,capacity,color :=getacar()

fmt.println(brand,model,capacity,color)

2、擴充套件用法

建立乙個多返回值的方法:

func getuser()(name string ,age int ,address string

)

呼叫:

var name string

var age int

var address string

var address2 string

//第一種呼叫方式

name,age,address =getuser()

//第二種呼叫方式,不需要的返回值可以用_代替

_,_,address2 =getuser()

fmt.println(name,age,address)

fmt.println(address2)

可以看到,go強大的設計讓我們支援多樣的寫法。

參考:《go語言程式設計》-許式偉 呂桂華

函式 函式的多返回值

go noinline func test x int int,int func main go build go tool objdump s main main test函式提供多返回值。多返回值在語法上接近於 python,在實現上方式上不一樣。python 多返回值實際上打包成乙個元組返回,...

Go 學習筆記04 函式 多返回值 變參函式

我們定義了乙個plus函式,接收a,b兩個引數,型別均是int,返回值也為int 直接在main函式中呼叫 package main import fmt func plus a int b int int func main package main import fmt 返回兩個都為int型別 ...

函式返回值

這裡接著探求被調函式的返回值是如何傳遞到主調函式中的,下面為c程式。add函式通過直接返回a b的,而add1函式先定義乙個區域性變數c,儲存a b的值,然後再返回c的值。其中a b可以當成乙個臨時變數,其結果是暫時存放在暫存器中的 eax 參照反匯程式設計序,可以看出函式的值並不是通過壓棧 基址定...