如果这很重要,我已经写了很多年的代码,但我现在才同时探索golang和vscode。在我的Linux盒子上,我安装了vscode(1.56.2)和golang插件(0.25.1)。我一直在学习一些简单的golang教程,我注意到当我保存我编辑过的文件时发生了一件奇怪的事情。这是我的台词:out = append(out, base + v)当我保存它时,它变成了这样:out = append(out, base+v)它删除了“+”运算符周围的空格。我搜索了vscode和golang扩展设置,我几乎没有发现它在保存时会做什么。实际上,在“设置”中,我选中了“保存时格式化”。那么,这是做什么的,为什么呢?我是否能够对此进行配置?
2 回答

忽然笑
TA贡献1806条经验 获得超5个赞
那么,这是做什么的,为什么呢?
编辑器在保存时运行该命令。该命令使用空格来显示操作员优先级。gofmt
以下代码段使用该命令进行格式化。请注意操作数如何更接近高优先级运算符。gofmt
fmt.Println(a + b + c + d)
fmt.Println(a * b * c * d)
fmt.Println(a + b*c + d)
fmt.Println(a*b + c*d)
该命令将删除问题中 的空格,因为gofmt++,

POPMUISE
TA贡献1765条经验 获得超5个赞
这与VScode无关。如果您有此文件:
package main
import "fmt"
func main() {
var a []int
a = append(a, 1 + 2)
fmt.Println(a)
}
跑步可以让您:gofmt file.go
package main
import "fmt"
func main() {
var a []int
a = append(a, 1+2)
fmt.Println(a)
}
- 2 回答
- 0 关注
- 177 浏览
添加回答
举报
0/150
提交
取消