繁体   English   中英

Golang的fmt不是格式括号吗?

[英]Does golang's go fmt not format brackets?

所以我一直在尝试再次使用golang,我记得go有一个格式化工具来清理你的源代码。 所以,当我在我的项目上运行go fmt时,以下错误会被吐出:

expected declaration, found '{'

我期待fmt修复我的括号以尊重go的语法要求,但它只是吐出一个错误。 这是预期的功能还是应该将括号放在正确的行上(与函数声明相同的行)?

我希望格式正确的基本代码:

package main

func main()
{
    println("Learning go again")
}

Go对有效代码是什么有一些非常强烈的意见。
这是其中一个案例。 与许多其他C系列语言不同,它允许将函数体声明的大括号放在同一行或下一行(如果你喜欢的话,甚至是后面的十行),Go编译器允许它只放在同一行上。

另一个例子是else语句。 用其他语言在哪里

if {
}
else {
}

可能是有效的甚至是首选的,在Go中仅编译else语句的形式

if {
} else {
}

go fmt将修复空格或缺失空格:

func main()             {
    fmt.Println("Hello, playground")
}

func main(){
   fmt.Println("Hello, playground")
}

两者都会成为

func main() {
   fmt.Println("Hello, playground")
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM