导出的类型代理应具有注释或未导出的golang VSCode

时间:2018-10-26 08:12:05

标签: go

我在golang中尝试了这段代码

table2

然后我得到了

sheet2

警告有点烦人。

如何摆脱它? 我应该发表什么评论? 是否有任何默认的评论模板?

它要求我发表评论,但没有提供我默认添加的评论。

4 个答案:

答案 0 :(得分:6)

只需在其上方添加评论,如下所示:

// Agent is ...
type Agent struct {
   name string
   categoryId int
}

此注释是因为即使您的Agent类型的属性未导出,也已导出。要不导出您的类型,请使用小写字母进行定义,如下所示:

type agent struct {
   name string
   categoryId int
}

答案 1 :(得分:2)

此警告由官方linter针对Go源代码golint产生。在Visual Studio代码编辑器中,Go extension Golint 用作默认短绒。


为什么

要了解 原因 的原因,为什么 golint 显示警告,我们可以参考“ 注释”部分"Effective Go"(提供编写清晰,惯用的Go代码的提示的官方文档)中。这是相关的报价:

  

程序中的每个导出的(大写)名称都应具有文档注释。


但是,如果您倾向于编写自我记录代码,那么确实可以是annoying(即,从名称本身就可以清楚地看出意图)等等)。


解决方案

除了已经提出的solutions,您可以做的是开始使用Go的替代品和更高级的短绒-golangci-lint。该短毛绒具有默认设置,不会警告那些丢失的 doc注释(当然,如果需要,您可以使用相关的flags来打开此警告) 。

Go扩展程序的描述页面上也提到了更换短绒棉的可能性:

enter image description here


如何在VS Code中更改Go扩展程序的皮棉工具

要在VS Code中更改棉绒工具,请执行以下步骤。

1)在Go Extension的管理菜单中选择“ 配置扩展名设置 s”:

enter image description here

2)从相关的下拉列表中选择“ golangci-lint”:

enter image description here

3)为防止由于使用此功能强大的linter而导致VS Code冻结,请按照"Editor Integration"说明中的说明添加--fast标志。

为此,您需要导航到Go Extension配置页面(如步骤1所示),打开settings.json文件并添加相关配置,如以下屏幕截图所示:

enter image description here

enter image description here

注意!以下是“ golangci-lint FAQ的引文:

  

为什么在首次运行时使用--fast运行会很慢?
  因为第一次运行会缓存类型信息。所有后续运行将很快。   通常,在本地计算机上进行开发时会使用此选项,并且已经执行了编译。

答案 2 :(得分:0)

您可以通过在函数名称上方添加注释来解决此问题。

以下示例:

//ArrayBasic1 is the function for calculating array
func ArrayBasic1() {
  x := [5]int{1: 10, 2: 20, 3: 30}
  fmt.Println("value from arraybasic1", x)
}

答案 3 :(得分:-1)

Starting Thread 01 at: 2020-11-22 15:01:43.308
Starting Thread 02 at: 2020-11-22 15:01:43.308
Starting Thread 03 at: 2020-11-22 15:01:43.308
Starting Thread 04 at: 2020-11-22 15:01:43.308
Starting Thread 05 at: 2020-11-22 15:01:43.309
Starting Thread 06 at: 2020-11-22 15:01:43.309
Starting Thread 07 at: 2020-11-22 15:01:43.309
Starting Thread 08 at: 2020-11-22 15:01:43.309
Starting Thread 09 at: 2020-11-22 15:01:43.309
Starting Thread 10 at: 2020-11-22 15:01:43.309
10
Stopping Thread 10 at: 2020-11-22 15:01:44.310
9
Stopping Thread 09 at: 2020-11-22 15:01:45.311
8
Stopping Thread 08 at: 2020-11-22 15:01:46.309
7
Stopping Thread 07 at: 2020-11-22 15:01:47.314
6
Stopping Thread 06 at: 2020-11-22 15:01:48.311
5
Stopping Thread 05 at: 2020-11-22 15:01:49.310
4
Stopping Thread 04 at: 2020-11-22 15:01:50.310
3
Stopping Thread 03 at: 2020-11-22 15:01:51.311
2
Stopping Thread 02 at: 2020-11-22 15:01:52.309
1
Stopping Thread 01 at: 2020-11-22 15:01:53.311