'.' 是什么意思 ,在 Go 导入语句中做什么?
技术问答
245 人阅读
|
0 人回复
|
2023-09-12
|
在 Go 教程和我看过的大部分 Go 代码中,包是这样导入的:
+ p7 ]' u- P4 i5 F. \5 k! ?import "fmt" "os" "launchpad.net/lpad" ...)' [" L1 @4 Y3 @; k7 |3 R% s
但是在gocheck 包是用.(句点)导入:# u2 h. V5 V9 c% \) p6 u1 d% {9 y
5 C% y. Y. o/ A/ u
- import "http" . "launchpad.net/gocheck" "launchpad.net/lpad" "os" code].(句号)有什么意义?7 V: M4 z$ U& Z; Q8 J. q
-
; B, n3 g( s" O - 解决方案: + i3 a& Y" }1 D! R
- 导入包中的标识符允许在本地文件块中引用,无限定符。1 B: p1 S* Z( S, ^% O) X5 e- Q9 i3 h
- 若出现显式句点 (.) 如果不是名称,所有包的导出标识符将在当前文件的文件块中声明,无需限制符即可访问。8 i1 C+ b1 H( O8 n! ~
- 假设我们编译了一个包括 package 子句 package math 包,它出函数 Sin,并将编译包安装在lib/math标识文件中。本表显示了如何在导入包的各种类型的导入声明后访问 Sin。[code]Import declaration Local name of Sinimport "lib/math" math.Sinimport M "lib/math" M.Sinimport . "lib/math" Sin0 O5 o) x4 n' {" v8 s. |5 z
|
|
|
|
|
|