Go语言中包

作者: ropon 分类: Go 发布时间: 2019-11-20 13:41
//定义一个包

package addpkg

import "fmt"

//定义 addpkg包
//对外可见 标识符首字母必须大写

//以下结构体对外可见
type Student struct {
	Id int
	Name string
	Gender string
}
//对外不可见
var x = 100

// Add 加法
func Add(a, b int) int {
	fmt.Println(x)
	return a + b
}

// 使用包

package main

import (
	"fmt"
	"ropon.top/day03/3package/cacl"
)

//import 导包通常放到包声明下面
//import 别名 "包的路径"
//匿名导包 只导入包,不导入包内部数据
//import _ "包的路径"

//导包时会自动触发包内部init()函数
//init 函数执行时机 全局变量等声明=>init()=>main()

//init函数执行顺序
//导包顺序
//main	=> imort A	=> import B	=> import C
//init执行顺序
//main.init() <= A.init() <= B.init() <= C.init()
var aa = 10

func init()  {
	fmt.Println(aa)
	fmt.Println("main包初始化~")
}

func f1(a string) string {
	return "a"
}

func main() {
	//res := addpkg.Add(1, 3)
	//fmt.Println(res)
	//fmt.Printf("recai\n")
	//
	//stu1 := addpkg.Student{
	//	Id:     1,
	//	Name:   "Ropon",
	//	Gender: "man",
	//}
	//fmt.Println(stu1)
	//f1("sss")
	r1 := cacl.Add(6, 2)
	r2 := cacl.Jian(6, 2)
	r3 := cacl.Chen(6, 2)
	r4 := cacl.Chu(6, 2)
	fmt.Println(r1, r2, r3, r4)
}

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!