?
This document uses PHP Chinese website manual Release
import "errors"
概述
索引
示例
Errors包實(shí)現(xiàn)了處理錯(cuò)誤的函數(shù)。
package mainimport ("fmt""time")//MyError是一個(gè)包含時(shí)間和消息的錯(cuò)誤實(shí)現(xiàn)。type MyError struct { When time.Time What string}func (e MyError) Error() string {return fmt.Sprintf("%v: %v", e.When, e.What)}func oops() error {return MyError{ time.Date(1989, 3, 15, 22, 30, 0, 0, time.UTC),"the file system has gone away",}}func main() {if err := oops(); err != nil { fmt.Println(err)}}
func New(text string) error
打包全新(Errorf)
errors.go
func New(text string) error
New 返回格式為給定文本的錯(cuò)誤。
package mainimport ("errors""fmt")func main() { err := errors.New("emit macho dwarf: elf header corrupted")if err != nil { fmt.Print(err)}}
fmt 包的 Errorf 函數(shù)使我們可以使用包的格式化功能來創(chuàng)建描述性錯(cuò)誤消息。
package mainimport ("fmt")func main() {const name, id = "bimmler", 17 err := fmt.Errorf("user %q (id %d) not found", name, id)if err != nil { fmt.Print(err)}}