当前位置:   article > 正文

go语言学习笔记 — 基础 — 高级数据类型 — 结构体(8):如何在包中引用另外一个包的结构体?_go语言中如何使用其他包中定义的结构体

go语言中如何使用其他包中定义的结构体
  • 两个go源文件不属于同一个package

将room.go所在的package引入到msg.go中,需要在msg.go使用时加上包名。

room.go

package room

type Rule struct{
    name string
    age  int    //your code
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

msg.go

package msg

import "room"

var a room.Rule
  • 1
  • 2
  • 3
  • 4
  • 5
  • 两个go源文件属于同一个package

如果这两个文件属于同一个package的话,直接用Rule就行了,无需导入包名。但在运行或编译时,需要加上结构体所在的go源文件。

room.go

package main

type Rule struct{
    name string
    age  int    //your code
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

main.go

package main

var a Rule

func main() {
    fmt.Println(a)
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

运行、编译

# go run main.go room.go
  • 1
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Gausst松鼠会/article/detail/206357
推荐阅读
相关标签
  

闽ICP备14008679号