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  */