<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>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                ### 概述 所謂閉包就是一個函數"捕獲了和它在同一作用域的其他常量和變量. 這就意味著當閉包被調用的時候,不 管在程序說明地方調用,閉包能夠使用這些常量或者變量. 它不關心這些捕獲了的變量或者常量是否已經 超出了作用域,所以只有閉包還在使用它,這些變量就還會存在. 在go語言中,所有的匿名函數(go語言規范中稱之為函數字面量)都是閉包,匿名函數是指不需要定義函數名 的一種函數實現方式,它并不是一個新概念,最早可以回溯到1958年的Lisp語言 . go語言匿名函數也可以使 用函數類型 . ### 使用方法 #### 第一種 ~~~ func main() { num := 10 f1 := func() { fmt.Println(num) num ++ num := 100 //不要寫成"="號,否者就改變了外部變量值,這里是重新聲明了一個新的變量,只不過變量名是相同的,但是作用域是不同的 fmt.Println(num) } f1() f1() fmt.Println(num) } ~~~ ~~~ 10 100 11 100 12 ~~~ #### 第二種 函數類型 ~~~ func main() { type call func() f1 := func() { fmt.Println("hello") } var f2 call f2 = f1 f2() } ~~~ ~~~ hello ~~~ #### 第三種 ~~~ func(a int) { fmt.Println(a) //定義并直接調用 }(10) ~~~ #### 第四種 ~~~ func main() { f := show() fmt.Println(f()) fmt.Println(f()) } func show() func() int { x := 0 return func() int { x++ return x * x } } ~~~
                  <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>

                              哎呀哎呀视频在线观看