#168 和13.2中链接错误的问题
This commit is contained in:
4
11.1.md
4
11.1.md
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user