程序开发 · 2023年12月21日

Go GoCILint,将错误标记分配给空白标识符

当前位置: > > > > Go GoCILint,将错误标记分配给空白标识符

来源:stackoverflow
2024-04-24 14:18:35
0浏览
收藏

今天将给大家带来《Go GoCILint,将错误标记分配给空白标识符》,感兴趣的朋友请继续看下去吧!以下内容将会涉及到等等知识点,如果你是正在学习Golang或者已经是大佬级别了,都非常欢迎也希望大家都能给我建议评论哈~希望能帮助到大家!

问题内容

我已开始使用 gocilint,但它不会标记将错误分配给空白标识符的代码。

func someFunc() error{

}

_ := someFunc()

这是一种不正确的编码实践,其中错误被分配给空白标识符而不进行检查,但这并没有被 gocilint 标记。

这是 lints 的限制还是我必须在此处启用某些功能

我已经检查了 errchk、govet、staticanalysis lint 工具,但它们似乎都没有标记此代码

解决方案

默认接受空白分配(这是故意的)。

但是,您可以使用 -blank 标志告诉它在 _ 分配上触发。

这记录在 errcheck 文档的 部分中:

-blank 标志允许检查错误分配给 空白标识符。它不需要任何参数。

在golang-ci级别,可以在中指定:

linters-settings:
  ...
  errcheck:
    ...
    # report about assignment of errors to blank identifier: `num, _ := strconv.Atoi(numStr)`;
    # default is false: such cases aren't reported by default.
    check-blank: false
    ...

到这里,我们也就讲完了《Go GoCILint,将错误标记分配给空白标识符》的内容了。个人认为,基础知识的学习和巩固,是为了更好的将其运用到项目中,欢迎关注公众号,带你了解更多关于的知识点!