Go 学习笔记 10 | go mod 以及自定义包

一、go mod 以及 Golang 自定义包

go mod init 初始化项目

新建一个 demo 文件夹,在 demo 文件夹下新建 go.mod 文件和 main.go 文件,再在 demo 文件夹下新建一个 calc 文件夹,在 calc 文件夹下新建一个 calc.go 文件。

calc.go 代码

package calc  // package 一定要放在最上面

func Add(x, y int) int {  // 首字母大写表示公有方法
    return x + y
}

func Sub(x, y int) int {
    return x - y
}

main.go 代码

package main

import (
    "fmt"
    "demo/calc"  // 使用自定义包
)

func main() {
    sum := calc.Add(10, 2)
    fmt.Println(sum)
}

一个文件夹下直接包含的文件只能归属于一个 package,同样一个 package 的文件不能在多个文件夹下。

因此 calc.go 只属于 calc package。

包前面加下划线空格表示匿名引入包,如果不使用这个包,则不会报错。

import (
    "fmt"
    _ "demo/calc"  // 使用自定义包
)

main 包中,init 函数优先于 main 函数。

最后被导入的包会最先初始化并调用其 init() 函数。

二、参考教程

Golang 教程 P35

Go学习笔记 文章被收录于专栏

自己学习 Go 语言记录的笔记。

全部评论

相关推荐

专业嗎喽:个人信息名字太大,合到电话邮箱那一栏就行,有党员写过党,剩下其他全删,站空太大了 把实习经历丰富,放最前面,然后是个人评价,技能之类的,然后是学校信息。项目经历最后面,可以就选一个自己擅长的。 现在是学校不是92就扣分的,没必要放前面。 然后现在看重实习经历>竞赛经历(校园经历)>课程项目经历
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务