<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國際加速解決方案。 廣告
                ## 函數返回錯誤 一般將函數最后一個返回值返回一個error接口類型的錯誤,如果該error不為nil,那么應該是發生了錯誤,對于該函數返回的其他值,不應該再使用了(大多數情況). ## 錯誤處理策略 1 . 將錯誤直接返回給調用者. 或者當if判斷有錯誤時,構造新的錯誤解釋返回.對于一個函數有多個可能發生錯誤的地方,返回清晰的錯誤原因. 2.重試錯誤,當第一次調用時發生了錯誤,那么我們嘗試再次調用,但是要設置調用的次數和事件間隔,不能無限制的去調用. 3.如果錯誤發生后,程序無法繼續運行,我們就可以采用第三種策略:輸出錯誤信息并結束程序。需要注意的是,這種策略只應在main中執行。對庫函數而言,應僅向上傳播錯誤,除非該錯誤意味著程序內部包含不一致性,即遇到了bug,才能在庫函數中結束程序。os.Exis(1) 4.有時,我們只需要輸出錯誤信息就足夠了,不需要中斷程序的運行。我們可以通過log包提供函數 ~~~ if err := Ping(); err != nil { log.Printf("ping failed: %v; networking disabled",err) } ~~~ 5.我們可以直接忽略掉錯誤。這種錯誤,不會造成很大的影響.并不影響程序的正常使用.但是你要清除,忽略意味著什么. ~~~ dir, err := ioutil.TempDir("", "scratch") if err != nil { return fmt.Errorf("failed to create temp dir: %v",err) } // ...use temp dir… os.RemoveAll(dir) // ignore errors; $TMPDIR is cleaned periodically ~~~ 在Go中,錯誤處理有一套獨特的編碼風格。檢查某個子函數是否失敗后,我們通常將處理失敗的邏輯代碼放在處理成功的代碼之前。如果某個錯誤會導致函數返回,那么成功時的邏輯代碼不應放在else語句塊中,而應直接放在函數體中。Go中大部分函數的代碼結構幾乎相同,首先是一系列的初始檢查,防止錯誤發生,之后是函數的實際邏輯。
                  <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>

                              哎呀哎呀视频在线观看