我喜欢将类型名称与Go中的变量进行一些视觉分离。 我一直在玩以下内容:
var target (int64) = 600851475143
var largest (int64) = 0
var i (int64)
到目前为止,它正确编译,我发现我的程序运行结果没有任何差别。
这是危险的吗?上面和下面之间是否有语义差异?var target int64 = 600851475143
var largest int64 = 0
var i int64
由于
答案 0 :(得分:8)
没有语义差异,但你可能会发现自己正在与go fmt
作斗争,所以我认为这不值得。
答案 1 :(得分:4)
你不单独编码。
即使没有其他人读过您的代码,您也会阅读其他人的代码:标准API之一,您将使用的其中一个组件,以及其中一个博客,SO答案和所有文档
由gofmt
强制执行的格式标准化可确保您轻松阅读所有go代码,而无需习惯编写器的格式化风格。在简单格式化的代码中,很多错误自然会被避免,因为不常见的是立即看到的。
此外,这里就像你的括号增强代码在标准编辑器中看起来一样:
无需添加任何内容以使类型可见。
我建议您在所有代码上运行gofmt并阅读标准软件包代码,以便尝试使用相同的格式样式(包括注释)。
Here's what Rob Pike had to say about code and comment decoration.我认为这些都是好的建议,即使并非一切都适用。