• 【Go语言学习笔记】包


    包其实是每个大型工程都会使用的模块化工具。

    将相关的代码封装成一个包,给其他项目调用,提供不同的功能。

    GO的设计是将一个文件夹看成一个包,虽然不一定非要用文件夹的名字,但是比较建议。

    • 同一个文件夹下只能有一个包名。
    • 同文件夹下可以自由调用,不用引用。
    • 引入其它包,只能调用它提供的首字母大写的函数。
    //方法1
    import "calc"
    import "fmt"
     
    //方法2
    import (
        "calc"
        "fmt"
    )
    

    main包

    main包是程序的入口,即编译必须从这个包开始。
    且main包中必须有且只有一个main()函数,编译的时候可以用包名编译,也可以用文件编译。

    init函数

    显而易见,这是个初始化函数。在你引用包的时候,这个函数会被执行。在main函数之前。

    如果你引用了多个包,会按栈的顺序,执行对应的init函数。

    特殊操作

    点操作

    import (
        //这个点操作的含义是这个包导入之后在你调用这个包的函数时,可以省略前缀的包名
        . "fmt"
    )
     
    func main() {
        Println("hello go")
    }
    

    别名操作

    在导⼊时,可指定包成员访问⽅式,⽐如对包重命名,以避免同名冲突:

    import (
        io "fmt" //fmt改为为io
    )
     
    func main() {
        io.Println("hello go") //通过io别名调用
    }
    

    _操作

    有时,用户可能需要导入一个包,但是不需要引用这个包的标识符。在这种情况,可以使用空白标识符_来重命名这个导入:

    import (
        _ "fmt"
    )
    

    _操作其实是引入该包,而不直接使用包里面的函数,而是调用了该包里面的init函数。

    当你停下来休息的时候,不要忘记别人还在奔跑!
  • 相关阅读:
    【MongoDB】windows平台搭建Mongo数据库复制集(相似集群)(一)
    关于jave在oracle驱动下事务提交与回滚问题
    将其它图片格式转为.eps格式
    学习OpenBlas
    ZOJ3640-Help Me Escape
    向死而生——我修的死亡学分
    iOS对象属性详解
    http状态码介绍
    8080端口被占用
    图片特效
  • 原文地址:https://www.cnblogs.com/HappyTeemo/p/15662577.html
Copyright © 2020-2023  润新知