Wie Golang Fehler definiert
Während des Entwicklungsprozesses, als der von der Standardbibliothek zurückgegebene Fehlerinhalt unsere Anforderungen nicht mehr erfüllen konnte, haben wir eingebaut. error in go ist eine Schnittstelle,
Verwandte Empfehlungen: Golang-Tutorial
type error interface { Error() string }
Sie müssen also nur eine Struktur erstellen, die die String-Funktion Error() enthält.
1. Erstellen Sie ein neues Fehlerpaket unter go path
vim $GOPATH/github.com/mypractise/error/errors.go
package errors type Error struct { ErrCode int ErrMsg string } func NewError(code int, msg string) *Error { return &Error{ErrCode: code, ErrMsg: msg} } func (err *Error) Error() string { return err.ErrMsg }
2. Starten Sie den Aufruf des Fehlerpakets
vim ./test.go
package main import ( "encoding/json" "errors" "fmt" myerr "github.com/mypractise/errors" ) func myErr() error { err := myerr.NewError(2, "err test") return err } func staErr() error { m := make(map[string]string) err := json.Unmarshal([]byte(""), m) if err != nil { return err } return errors.New("aaaaa") } func main() { err1 := staErr() fmt.Println("------sta err:", err1.Error()) err2 := myErr() fmt.Println("------my err:", err2.Error(), err2.(*myerr.Error).ErrCode) }
3. Führen Sie den Test aus
go run ./test.go
PHP-Chinesisch-Website, eine große Anzahl von Programmier-Tutorials und Tutorials zum Aufbau von Websites können gerne erlernt werden.
Das obige ist der detaillierte Inhalt vonWie Golang Fehler definiert. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!