有没有一种好方法可以消除包名和局部变量之间的歧义?如果不需要,我宁愿不重构导入名称或变量名称。举个例子……
import "path"
func foo() {
path := "/some/path"
// Disambiguate here
path.Join(path, "/some/other/path")
}
最佳答案
局部变量总是覆盖(隐藏)这里的包。选择另一个变量名称,或将包命名为其他名称:
http://play.golang.org/p/9ZaJa5Joca
或
http://play.golang.org/p/U6hvtQU8dx
在其他答案中查看 nemo 的替代方案。我认为最可维护的方法是选择一个不会与包名称重叠的变量名称。
关于go - 从 Go 中的本地 var 中消除包名称的歧义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20715049/