我的代码中有一部分具有意外行为。. . .fmt.Println("Error:", err)if err == nil { return err}fmt.Println("Done category"). . .上面的部分有以下输出Error: <nil>if 语句下面的代码永远不会执行。如果我删除 if 语句,代码会按预期运行。参考:https : //github.com/skarllot/flogviewer/blob/master/wlog/parser.go#L138
1 回答
繁星点点滴滴
TA贡献1803条经验 获得超3个赞
让我们一步一步来。
fmt.Println("Error:", err)
如果输出是Error: <nil>.. 那么你的err变量是nil.
if err == nil {
return err
}
这是说..“如果err变量是nil(它是..我们在上面确定的)......然后返回nil值。
此时..你的函数已经返回..所以它下面的任何东西都不会运行。
也许你的意思是这条线?:
if err != nil {
// ^^ NOT equal?
- 1 回答
- 0 关注
- 221 浏览
添加回答
举报
0/150
提交
取消