github.com/code-reading/golang@v0.0.0-20220303082512-ba5bc0e589a3/coding/errors/fmt.errorf.go (about) 1 package main 2 3 import ( 4 "errors" 5 "fmt" 6 ) 7 8 func main() { 9 e := Error() 10 fmt.Println(e) 11 ee := errors.Unwrap(e) 12 fmt.Println(ee) 13 } 14 15 func Error() error { 16 return fmt.Errorf("this is error, %w", errors.New("Error1")) 17 } 18 19 // fmt.Errorf( %w ) 通过%w 可以嵌入错误, 在通过 errors.Unwrap 还要错误 20 21 /* 22 output 23 this is error, Error1 24 Error1 25 */