• golang 引入 和 创建 包


     1 
     2 /*
     3     单个包:
     4         improt "包目录的路径"
     5     多个包:
     6         improt ("包目录的路径", "包目录的路径")
     7         improt (
     8             "包目录的路径"
     9             "包目录的路径"
    10         )
    11     自定义引用的包名 :
    12         import (
    13             "包目录的路径"
    14             "crypto/rand"
    15             自定义名 "包目录的路径" // 将名称替换为mrand避免冲突
    16             r "crypto/rand"
    17         )
    18     只导入包但不使用包 :
    19         import (
    20             _ "path/to/package"
    21         )
    22     初始化入口:init()
    23         每个源码可以使用 1 个 init() 函数。
    24         init() 函数会在程序执行前(main() 函数执行前)被自动调用。
    25         调用顺序为 main() 中引用的包,以深度优先顺序初始化。
    26         在运行时,被最后导入的包会最先初始化并调用 init() 函数 : main→A→B→C,那么这些包的 init() 函数调用顺序为: C.init→B.init→A.init→main
    27         同一个包中的多个 init() 函数的调用顺序不可预期。
    28         init() 函数不能被其他函数调用
    29 
    30         例如,为了提高数学库计算三角函数的执行效率,可以在程序启动时,
    31         将三角函数的值提前在内存中建成索引表,外部程序通过查表的方式迅速获得三角函数的值。
    32         但是三角函数索引表的初始化函数的调用不希望由每一个外部使用三角函数的开发者调用,
    33         如果在三角函数的包内有一个机制可以告诉三角函数包程序何时启动,那么就可以解决初始化的问题
    34 */
    35 
    36 package info_packge
    37
     1 /*
     2 goLang引入自定义包规则:
     3     1 : 设置$GOPATH环境变量
     4     2 : 自定义包里面对外提供的API函数,首字母必须大写
     5     3 : 包的编译和安装:
     6         包的.go文件必须存放在一个独立的文件夹下(如test)
     7         然后对test文件夹使用 go build 和 go install 命令:之后在$GOPATH下添加生成pkg文件夹,
     8         文件夹下则生成test.a文件(因此,包文件的父文件夹名最好和包名一致)
     9     4 : 包的使用 :
    10             生成包的名字和包的真实名字可以不一致
    11             project/src/test/my.go
    12              main.go
    13             pkg/XXXXXX/test.a
    14 
    15 */
    16 package info_packge
  • 相关阅读:
    更新部分字段 NHibernate
    无法显示 XML 页。 使用 XSL 样式表无法查看 XML 输入。请更正错误然后单击 刷新按钮,或以后重试的解决办法
    初识使用Apache MINA 开发高性能网络应用程序
    生产者消费者问题理解与Java实现
    国内HTML5前段开发框架汇总
    mongodb的sharding架构搭建
    spring配置声明式事务
    如何设计页面固定广告的效果
    结合实际问题浅谈如何使用蒙特卡罗算法模拟投资分析
    多线程实现资源共享的问题学习与总结
  • 原文地址:https://www.cnblogs.com/weihexinCode/p/12317052.html
Copyright © 2020-2023  润新知