回到简体

This commit is contained in:
chai2010
2016-02-15 11:06:34 +08:00
parent 9e878f9944
commit 2b37b23285
177 changed files with 2354 additions and 2354 deletions

View File

@@ -1,10 +1,10 @@
### 2.6.1. 入包
### 2.6.1. 入包
在Go言程序中,每包都是有一全局唯一的入路徑。導入語句中似"gopl.io/ch2/tempconv"的字符串對應包的入路。Go言的規范併沒有定義這些字符串的具體含義或包自哪里,它是由建工具來解釋的。使用Go言自的go工具箱(第十章),一個導入路代表一個目録中的一或多Go源文件。
在Go言程序中,每包都是有一全局唯一的入路径。导入语句中似"gopl.io/ch2/tempconv"的字符串对应包的入路。Go言的规范并没有定义这些字符串的具体含义或包自哪里,它是由建工具来解释的。使用Go言自的go工具箱(第十章),一个导入路代表一个目录中的一或多Go源文件。
除了包的入路,每個包還有一包名,包名一般是短小的名字(不要求包名是唯一的),包名在包的聲明處指定。按照例,一包的名字和包的入路的最後一個字段相同例如gopl.io/ch2/tempconv包的名字一般是tempconv。
除了包的入路,每个包还有一包名,包名一般是短小的名字(不要求包名是唯一的),包名在包的声明处指定。按照例,一包的名字和包的入路的最后一个字段相同例如gopl.io/ch2/tempconv包的名字一般是tempconv。
要使用gopl.io/ch2/tempconv包需要先入:
要使用gopl.io/ch2/tempconv包需要先入:
<u><i>gopl.io/ch2/cf</i></u>
```Go
@@ -34,9 +34,9 @@ func main() {
}
```
導入語句將導入的包定到一短小的名字,然後通過該短小的名字就可以引用包中出的全部容。上面的導入聲明將允許我們以tempconv.CToF的形式來訪問gopl.io/ch2/tempconv包中的容。在默認情況下,入的包定到tempconv名字譯註:這包聲明語句指定的名字),但是我也可以定到另一個名稱,以避免名字§10.4)。
导入语句将导入的包定到一短小的名字,然后通过该短小的名字就可以引用包中出的全部容。上面的导入声明将允许我们以tempconv.CToF的形式来访问gopl.io/ch2/tempconv包中的容。在默认情况下,入的包定到tempconv名字译注:这包声明语句指定的名字),但是我也可以定到另一个名称,以避免名字§10.4)。
cf程序命令行入的一個溫度在Celsius和Fahrenheit溫度單位之間轉換
cf程序命令行入的一个温度在Celsius和Fahrenheit温度单位之间转换
```
$ go build gopl.io/ch2/cf
@@ -48,8 +48,8 @@ $ ./cf -40
-40°F = -40°C, -40°C = -40°F
```
如果入了一包,但是又有使用該包將被當作一個編譯錯誤處理。這種強製規則可以有效少不必要的依賴,雖然在調試期間可能會讓人討厭,因爲刪除一個類似log.Print("got here!")的打印句可能致需要同時刪除log包導入聲明,否則,編譯器將會發出一個錯誤。在這種情況下,我需要不必要的導入刪除或註釋掉。
如果入了一包,但是又有使用该包将被当作一个编译错误处理。这种强制规则可以有效少不必要的依赖,虽然在调试期间可能会让人讨厌,因为删除一个类似log.Print("got here!")的打印句可能致需要同时删除log包导入声明,否则,编译器将会发出一个错误。在这种情况下,我需要不必要的导入删除或注释掉。
有更好的解方案,我可以使用golang.org/x/tools/cmd/goimports入工具,它可以根需要自添加或刪除導入的包;許多編輯器都可以集成goimports工具在保存文件的候自動運行。似的有gofmt工具可以用格式化Go源文件。
有更好的解方案,我可以使用golang.org/x/tools/cmd/goimports入工具,它可以根需要自添加或删除导入的包;许多编辑器都可以集成goimports工具在保存文件的候自动运行。似的有gofmt工具可以用格式化Go源文件。
**練習 2.2** 寫一個通用的單位轉換程序,用似cf程序的方式命令行讀取參數,如果缺省的話則是從標準輸入讀取參數,然後做類似Celsius和Fahrenheit的單位轉換,長度單位可以對應英尺和米,重量位可以對應磅和公斤等。
**练习 2.2** 写一个通用的单位转换程序,用似cf程序的方式命令行读取参数,如果缺省的话则是从标准输入读取参数,然后做类似Celsius和Fahrenheit的单位转换,长度单位可以对应英尺和米,重量位可以对应磅和公斤等。