func Foo(param int) (n int, err error) {
 // ...
}
if n, err := Foo(0); err != nil {
        // 错误处理
}
package main
import (
 "errors"
 "fmt"
)
func requireDual(n int) (int, error) {
 if n1 == 1 {
  return -1, errors.New("您输入不是双数") //生成一个简单的 error 类型
 }
 return n, nil
}
func main() {
 if result, err := requireDual(101); err != nil {
  fmt.Println("错误:", err)
 } else {
  fmt.Println("结果:", result)
 }
}
package main
import (
 "fmt"
)
type dualError struct {
 Num     int
 problem string
}
func (e dualError) Error() string {
 return fmt.Sprintf("参数不正确,因为\"%d\"不是双数", e.Num)
}
func requireDual(n int) (int, error) {
 if n1 == 1 {
  return -1, dualError{Num: n}
 }
 return n, nil
}
func main() {
 if result, err := requireDual(101); err != nil {
  fmt.Println("错误:", err)
 } else {
  fmt.Println("结果:", result)
 }
}