Go 語言初級教程之五[函數]

聲明函數的語法與C不一樣。就像變量聲明同樣,類型是在它們所描述的術語以後聲明的。在C語言中:
編程

  1. int add(int a, b) { return a + b }


在Go裏面是這樣描述的:
 安全

  1. func add(a, b int) int { return a + b }



多返回值
在C語言當中常見的作法是保留一個返回值來表示錯誤(好比,read() 返回0),或 者保留返回值來通知狀態,並將傳遞存儲結果的內存地址的指針。這容易產生了不安全的編程實踐,所以在像Go語言這樣有良好管理的語言中是不可行的。
認識到這一問題的影響已超出了函數結果與錯誤通信的簡單需求的範疇,Go的做者們在語言中內建了函數返回多個值的能力。
做爲例子,這個函數將返回整數除法的兩個部分:
 ide

  1. func divide(a, b int) (int, int) {
     
  2.     quotient := a / b  
     
  3.     remainder := a % b  
     
  4.     return quotient, remainder
     
  5. }


有了多個返回值,有良好的代碼文檔會更好——而Go容許你給返回值命名,就像參數同樣。你能夠對這些返回的變量賦值,就像其它的變量同樣。因此咱們能夠重寫divide函數

閱讀全文>>post

相關文章
相關標籤/搜索