Golang Function
宣告函式 函數就像個果汁機,使用者丟什麼食材進去,果汁機可以根據不同的設定(運算邏輯),產出不同的結果。在Go裡面使用函數的方式其實和JavaScript、Python很像,不管是傳入的參數值或是返回值得類型都是可選擇的,最大的不同則是是如果有return的話一定要定義輸出的類型,其宣告格式如下 func functionName([parameter list])[return type]{ //運算邏輯 } 最簡單呼叫函式的方式就是沒有任何傳遞任何參數,與要求回傳的類型 func main() { newCard() } func newCard() { fmt.Println("Ace of Spades") } // Ace of Spades 如在main函式裡面,呼叫add(5,3),add函式無論如何都會回傳int類型的結果。 值得注意的是,因為Go是一個強型別(strongly typed)語言,在執行階段會檢查型別,因此如果我們函式定義返回int,在第三行如果是return字串就會出現錯誤。 func add(x int, y int) int { return x + y //return "8" } func main() { fmt.Println(add(5, 3)) } // 8 此外在函式裡面如果也可以返回多個值,如下面compute function 定義回傳兩個int類型的結果 func main() { fmt.Println(compute(5, 3)) } func compute(x int, y int) (int, int) { return x * y, x + y } // 15, 8 參數傳遞 在Go語言裡面,參數的傳遞都是都透過Pass by value,實際傳遞時會將參數複製一份到函式中, 因此在函式中對參數進行修改並不會影響原本的值。 如下為官網原文...