©
This document uses PHP Chinese website manual Release
import "errors"
概述
索引
示例
Errors包实现了处理错误的函数。
package mainimport ("fmt""time")//MyError是一个包含时间和消息的错误实现。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 返回格式为给定文本的错误。
package mainimport ("errors""fmt")func main() { err := errors.New("emit macho dwarf: elf header corrupted")if err != nil { fmt.Print(err)}}
fmt 包的 Errorf 函数使我们可以使用包的格式化功能来创建描述性错误消息。
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)}}