go 不同 package 引用


环境  windows10

go项目要建在 ¥GOROOT/src下

首先查看 通过 go env 查看 goroot目录

 

 

 


 

要把项目建在 $GOROOT/src下

目录结构

|--t1

|----main.go

|----zs/

|--------People.go

如图

 

 

 

 

 

 

People.go代码
package zs

import "fmt"

//People 人
type People struct {
	Name string
	Age  int
}

//Say 说话
func (u *People) Say() {
	fmt.Printf("我叫 %v\n", u.Name)
	fmt.Printf("我今年%v岁了\n", u.Age)
}

 

main.go代码

package main

import "t1/zs"

func main() {
	u := zs.People{Name: "张三", Age: 10}
	u.Say()
}

go run main.go可以正常运行

 

 


文件夹名与包名不一致

 

 

 People.go代码不变

 

main.go 代码中导入包发生变化 

package main

import zs "t1/zs1"

func main() {
    u := zs.People{Name: "张三", Age: 10}
    u.Say()
}

go run main.go可以正常运行

 


 

 将 User.go放到 mian.go同级目录

同级目录下好像 包名必须一致

People.go代码 

package main

import "fmt"

//People 人
type People struct {
	Name string
	Age  int
}

//Say 说话
func (u *People) Say() {
	fmt.Printf("我叫 %v\n", u.Name)
	fmt.Printf("我今年%v岁了\n", u.Age)
}

  main.go代码

package main

func main() {
	u := People{Name: "张三", Age: 10}
	u.Say()
}

  go run main.go People.go

 

注意 要带上所有相关代码文件

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM