从另一个包和文件导入结构
在 Go 中,您在从另一个包和文件导入类型时遇到了问题。您引用的类型是一个 PriorityQueue,定义为 Item 类型的切片。
与 Java 不同,Go 不支持导入单个类型或函数。相反,您导入包。导入声明将包中所有导出的标识符引入到您的程序中。
例如,要导入 PriorityQueue 类型,您可以使用以下导入声明:
import "your.package.path/modulename"
此语句允许您可以通过 modulename.PriorityQueue 来访问 PriorityQueue 类型。同样,Item 类型可以引用为 modulename.Item。
如果存在名称冲突,可以在导入声明中使用包重命名或别名。例如:
import ( m "your.package.path/modulename" pq "path/to/priorityqueue" )
这将允许您访问作为 pq.PriorityQueue 的 PriorityQueue 类型和作为 m.Item 的 Item 类型。
此外,您可以导入包中的特定文件,为您提供对非导出类型的访问。不过,不推荐这种做法,应谨慎使用。
以上是如何在 Go 中从另一个包导入结构体?的详细内容。更多信息请关注PHP中文网其他相关文章!