Go語言中錯誤處理實例分析
本文實例講述了Go語言中錯誤處理的方法。分享給大家供大家參考。具體分析如下:
錯誤是可以用字符串描述自己的任何東西。 主要思路是由預(yù)定義的內(nèi)建接口類型 error,和其返回返回字符串竄的方法 Error 構(gòu)成。
type error interface {
Error() string
}
當(dāng)用 fmt 包的多種不同的打印函數(shù)輸出一個 error 時,會自動的調(diào)用該方法。
import (
"fmt"
"time"
)
type MyError struct {
When time.Time
What string
}
func (e *MyError) Error() string {
return fmt.Sprintf("at %v, %s",
e.When, e.What)
}
func run() error {
return &MyError{
time.Now(),
"it didn't work",
}
}
func main() {
if err := run(); err != nil {
fmt.Println(err)
}
}
希望本文所述對大家的Go語言程序設(shè)計有所幫助。
相關(guān)文章
詳解如何使用pprof簡單檢測和修復(fù)Go語言中的內(nèi)存泄漏
雖然?Go?有自動垃圾回收(GC),它能回收不再被使用的內(nèi)存,但這并不意味著?Go?程序中不會發(fā)生內(nèi)存泄漏,下面我們就來看看如何使用pprof進(jìn)行檢測和修復(fù)Go語言中的內(nèi)存泄漏吧2025-01-01
Golang?WorkerPool線程池并發(fā)模式示例詳解
這篇文章主要為大家介紹了Golang?WorkerPool線程池并發(fā)模式示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-08-08
Golang中ringbuffer的實現(xiàn)與應(yīng)用場景詳解
ringbuffer因為它能復(fù)用緩沖空間,通常用于網(wǎng)絡(luò)通信連接的讀寫,雖然市面上已經(jīng)有了go寫的諸多版本的ringbuffer組件,但還是自己造一個吧2023-06-06
GoLand一鍵上傳項目到遠(yuǎn)程服務(wù)器的方法步驟
我們開發(fā)項目常常將項目上傳到linux遠(yuǎn)程服務(wù)器上來運(yùn)行,本文主要介紹了GoLand一鍵上傳項目到遠(yuǎn)程服務(wù)器的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-06-06

