一尘不染

为什么Go中的程序包级别不允许短变量声明?

go

这是允许的:

package main

var a = 3

...

但这不是:

package main

a := 3

...

为什么不?为什么不能在没有类型的情况下将函数外部的短变量声明视为常规声明?只是为了简化解析?


阅读 241

收藏
2020-07-02

共1个答案

一尘不染

据伊恩·兰斯·泰勒(Ian Lance
Taylor)在公开宣布后不久在此主题中提到:

在顶层,每个声明都以关键字开头。这简化了解析。

2020-07-02