• Go语言的GOPATH详解


    在GOLAND中设置GOPATH:

    设置好路径后,并不是直接在这个路径下面写代码文件就行了

    GO会识别GOPATH下的src目录,而真正的引用的包名,是src下的目录名,然后才是代码模块名

    目录结构如图:

    complicated.go:

    package mypack
    
    import "math"
    
    func GetDistance(xa,ya,xb,yb float64) float64 {
    	dx := xa - xb
    	dy := ya - yb
    	return math.Pow((math.Pow(dx,2)+math.Pow(dy,2)),0.5)
    }
    

    simple.go

    package mypack
    
    func Add(a, b int) (sum int) {
    	return a + b
    }
    
    func Sub(a, b int) (different int) {
    	return a - b
    }
    
    func Mul(a, b int) (product int) {
    	return a * b
    }
    
    func Div(a, b int) (quotient float64) {
    	quotient = float64(a) / float64(b)
    	return
    }
    

    最终调用脚本:

    package main
    
    import (
    	"fmt"
    	"mypack"
    )
    
    func main() {
    	product := mypack.Mul(3, 4)
    	fmt.Println(product)
    
    	distance := mypack.GetDistance(-3, -4, 3, 4)
    	fmt.Println(distance)
    }
    

    调用二级包

    目录结构:

     complicated.go:

    package mysonpack  //这里变成了子包名
    
    import "math"
    
    func GetDistance(xa,ya,xb,yb float64) float64 {
    	dx := xa - xb
    	dy := ya - yb
    	return math.Pow((math.Pow(dx,2)+math.Pow(dy,2)),0.5)
    }
    

      

    最终调用脚本:

    package main
    
    import (
    	"compress/zlib"  //SDK子包路径
    	"fmt"
    	"mypack/mysonpack"  //子包路径
    )
    
    //func main091() {
    //	product := mypack.Mul(3, 4)
    //	fmt.Println(product)
    //
    //	distance := mypack.GetDistance(-3, -4, 3, 4)
    //	fmt.Println(distance)
    //}
    
    /*使用SDK中的二级包*/
    func main092()  {
    	closer, e := zlib.NewReaderDict(nil, nil)
    	fmt.Println(closer, e)
    }
    
    /*调用自己的二级包*/
    func main() {
    	distance := mysonpack.GetDistance(-3, -4, 0, 0)
    	fmt.Println(distance)
    }
    

      

  • 相关阅读:
    Jquery弹出框插件大全
    RGB颜色在线转换
    正则表达式最后加一个/g或者/ig代表什么意思
    JS实现页面上链接新窗口打开
    防止网站服务器被黑的一些方法
    JS中字符串背后的秘密
    ASP.NET MVC 路由规则写法
    日积月累从细节做起
    VC++ 配置困惑
    父类子类指针函数调用注意事项
  • 原文地址:https://www.cnblogs.com/yunweiqiang/p/11796356.html
Copyright © 2020-2023  润新知