我尝试学习 Go,但我经常感到沮丧,因为其他语言的一些基本功能在 Go 中似乎不起作用。所以基本上,我想使用在其他文件中定义的结构类型。我能够使用结构类型以外的函数。在 main.go 中, package main import ( "list" ) func main() { lst := list.NewList(false) lst.Insert(5) lst.Insert(7) lst.InsertAt(2, 1) lst.PrintList() }正如我所期望的(列表在 $GOPATH 中),这完美地工作(以及所有其他功能)。在包列表中,我定义了 struct 如下:type LinkedList struct { head *node size int isFixed bool}我想在其他结构中使用这个结构,所以我尝试做这样的事情,type SomeType struct { lst *LinkedList}但不幸的是,我收到了未定义 LinkedList 类型的错误。如何使用在其他包中定义的结构?
1 回答
白板的微信
TA贡献1883条经验 获得超3个赞
该LinkedList类型位于list命名空间中,因此将您对该类型的使用更改为:
type SomeType struct {
lst *list.LinkedList
}
- 1 回答
- 0 关注
- 209 浏览
添加回答
举报
0/150
提交
取消