#168 和13.2中链接错误的问题

This commit is contained in:
astaxie
2013-03-17 10:28:59 +08:00
parent 5f6c5da86f
commit cb35e3310f
2 changed files with 4 additions and 4 deletions

View File

@@ -72,14 +72,14 @@ Offset字段在调用Error的时候不会被打印但是我们可以通过类
return err
}
需要注意的是,函数返回自定义错误时,返回值也应设置为error类型而非自定义错误类型不应预声明自定义错误类型的变量。例如:
需要注意的是,函数返回自定义错误时,返回值推荐设置为error类型而非自定义错误类型特别需要注意的是不应预声明自定义错误类型的变量。例如:
func Decode() *SyntaxError { // 错误将可能导致上层调用者err!=nil的判断永远为true。
var err *SyntaxError // 预声明错误变量
if 出错条件 {
err = &SyntaxError{}
}
return err // 错误,虽然err变量等于nil但仍可能导致上层调用者err!=nil的判断为true
return err // 错误err永远等于nil导致上层调用者err!=nil的判断始终为true
}
原因见 http://golang.org/doc/faq#nil_error