go語言學習三 - 引用路徑和包


// demo/x/a/A.go package math // 在 x/a 目錄下沒有采用默認的與目錄同名的包名也是可以的,這樣正好測試出引用用的是目錄路徑,調用卻用的是代碼文件中聲明的包名 func Add(x,y int) int { return x + y } ////////////////////////////// // demo/y/a/A.go package math // 兩個不同路徑下定義了相同的包名 func Mul(x,y int) int { return x * y } ////////////////////////////// // demo/main.go package main import ( //可以給這個路徑下的代碼文件包指定一個別名,這樣就不管代碼中用的什么包名,還可以避免不同路徑下包名沖突的問題 "./x/a" //import的實際上是代碼文件的目錄路徑,不過 一個路徑可以有很多代碼文件,但這些代碼文件必須都在相同的一個包下 mathx "./y/a" "fmt" ) func main() { //默認情況最后一級目錄名和代碼文件聲明的包名是相同的 // 這里故意聲明為不同 就測試出了 調用時用的其實不是最后一級 目錄名 而是代碼文件聲明的 包名 fmt.Println(math.Add(2, 3)) //使用指定的別名調用包內的函數, fmt.Println(mathx.Mul(2, 3)) }


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM