cxfans
11/8/2019 - 2:42 AM

Go 错误处理相关

package main

import (
	"errors"
	"fmt"
	"os"
)

func main() {
	err := errors.New("first error")
	err3 := fmt.Errorf("second error: %w", err)
	fmt.Println(err3.Error())
	fmt.Println(err3)
	fmt.Println(errors.Unwrap(err3))
	fmt.Println(errors.As(err3, &err))
	fmt.Println(errors.Is(err3, err))

	_, err = os.Create("./.")
	fmt.Println(fmt.Errorf("create failed: [%w]", err))
}