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 语言记录的笔记。

全部评论

相关推荐

不愿透露姓名的神秘牛友
10-12 10:48
已编辑
秋招之苟:邻居家老哥19届双2硕大厂开发offer拿遍了,前几天向他请教秋招,他给我看他当年的简历,0实习实验室项目技术栈跟开发基本不沾边😂,我跟他说这个放在现在中厂简历都过不了
点赞 评论 收藏
分享
像好涩一样好学:这公司我也拿过 基本明确周六加班 工资还凑活 另外下次镜头往上点儿
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务