栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

是否可以不指定软件包名称?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

是否可以不指定软件包名称?

您可以将其用作导入声明,例如:

. "./bio"

如果出现显式的句号(

.
)而不是名称,则在该软件包的package块中声明的所有软件包导出的标识符都将在导入源文件的file块中声明,并且
必须在不使用限定符的情况下进行访问

这就是像govey这样的测试框架所做的:

package package_nameimport (    "testing"    . "github.com/smartystreets/goconvey/convey")func TestIntegerStuff(t *testing.T) {    Convey("Given some integer with a starting value", t, func() {        x := 1        Convey("When the integer is incremented", func() { x++ Convey("The value should be greater by one", func() {     So(x, ShouldEqual, 2) })        })    })}

您不需要使用

convey.So()
,或者
convey.Convey()
由于导入以’开头
.

但是请不要滥用它,因为正如twotwotwo注释那样 在测试之外不鼓励使用它。

除这种情况外,请勿

import .
在程序中使用。
由于不清楚Quux之类的名称是否是当前包或导入包中的顶级标识符,因此使程序更难阅读。

这就是为什么我提到了使用这种技术的 测试 框架。


正如Simon Whitehead所评论的那样,通常不认为使用 相对导入
是最佳实践(例如,参见“ Go语言包结构



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/436231.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号