<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                ### 小節 1. Go語言中聲明函數以關鍵詞func為標識 2. Go語言支持可變參數的特性,函數聲明可以沒有固定數量的參數 3. 匿名函數需要在函數定義時定義函數,匿名函數能以變量的形式傳遞,常常用于實現閉包。 4. 閉包就是包含了自由變量的匿名函數,其中的自由變量即使脫離了自由變量的環境也不會被刪除,在閉包的作用域內可以繼續使用這個自由變量。 5. defer語句是在當前函數即將返回是被調用,所有常常使用defer來釋放資源。 ### 擴展·函數傳遞參數的本質 值傳遞:將變量的一個副本傳遞給函數,不管怎么操作該副本都不會改變原來變量的值 引用傳遞:將變量的內存地址傳遞給函數,操作該變量是會找到原變量的地址,對其操作會改變原變量的值 對于int,string和bool傳的是原變量的副本。 對于指針,切片,map和channel(通道)傳遞的是原變量指針的副本,指針指向原變量地址。 ``` package main import "fmt" //值傳遞函數 func Byvalue(num int) { fmt.Println("Byvalue函數中num變量地址", &num) num = 100 } //引用傳遞函數 func Byre(num *int) { fmt.Println("Byre函數中指針變量num地址", &num) fmt.Println("Byre函數中指針變量指向地址為", &num) *num = 100 } func main() { nums := 1 fmt.Println("nums的地址為", &nums) Byvalue(nums) fmt.Println("nums變量的值為", nums) Byre(&nums) fmt.Println("nums變量的值為", nums) } 結果: nums的地址為 0xc000012098 Byvalue函數中num變量地址 0xc0000120d0 nums變量的值為 1 Byre函數中指針變量num地址 0xc000006030 Byre函數中指針變量指向地址為 0xc000006030 nums變量的值為 100 ``` 懂了,傳指針的話,是可以改值的。原來如此 ### Go語言內置函數 參考:https://www.cnblogs.com/-wenli/p/12573751.html | 內置函數 | 功能 | | --- | --- | | append | 將數據追加到 slice 的末尾,返回一個slice | | copy | 將源slice的數據復制到目標slice中,當目標slice的空間不夠時會舍棄超出的部分,返回的是復制成功的元素個數 | | delete | 刪除map中的鍵值對| | len | 計算數組,slice,map,channel等類型的長度 | | cap | 計算數組,slice,map,channel等類型長度 | | make | 為slice ,map或者channel類型分配內存并初始化對象 | | new | 為slice ,map或者channel以外類型分配內存并初始化對象 ,返回指針類型| | complex | 構建復數 | | real | 返回復數的實部 | | imag | 返回復數的虛部 | | close | 用于關閉channel | | panic | 觸發宕機 | | recover | 捕獲panic內置函數拋出的異常信息 | | print | 打印標準輸出,結尾沒有換行符 | | println | 打印標準輸出,結尾有換行符 | | printf | |
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看