Golang文档行为是一个bug吗?
Golang文档行为是一个bug吗?
不确定这是否是提问的最佳地点,但我对 go doc 的这个结果感到好奇。
当我像这样声明多个变量时:
package main
var (
A = 1
B = 2
C = 3
D = 4
)
var E = 5
那么 go doc -short 不会显示所有的 A、B、C、D:
var A = 1 ...
var E = 5
我试图获取一个包中所有导出符号的列表。在这种情况下,有六个错误是使用多行 var 语法声明的。其中三个会通过 go doc -short 列出,但最后三个被跳过了。go doc 是按预期工作的吗?
更多关于Golang文档行为是一个bug吗?的实战教程也可以访问 https://www.itying.com/category-94-b0.html
更多关于Golang文档行为是一个bug吗?的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html
根据你的描述,go doc -short 的行为是符合预期的,这不是一个 bug。go doc 在显示变量时,对于使用分组语法(var (...))声明的变量,只会显示该分组中的第一个变量,除非你使用 -all 标志。
这是因为 go doc 默认采用“简短”模式,旨在提供简洁的概述。在分组声明中,它假设同一分组内的变量具有相关性,因此只显示第一个作为代表。要查看所有导出的符号,你应该使用 go doc -all 或 go doc -short -all。
以下是一个示例,演示了 go doc 的不同行为:
package example
var (
First = 1
Second = 2
Third = 3
)
var Fourth = 4
运行 go doc -short 将输出:
var First = 1 ...
var Fourth = 4
运行 go doc -short -all 将输出所有变量:
var First = 1 ...
var Fourth = 4
var Second = 2 ...
var Third = 3 ...
如果你需要获取包中所有导出符号的完整列表,建议使用 go doc -all。例如,对于你的包,可以运行:
go doc -all -short
这将确保列出所有导出的变量,包括分组声明中的每一个。

