登录
首页 >  Golang >  Go问答

从另一个包和文件 golang 导入结构

来源:Golang技术栈

时间:2023-04-01 20:29:47 443浏览 收藏

IT行业相对于一般传统行业,发展更新速度更快,一旦停止了学习,很快就会被行业所淘汰。所以我们需要踏踏实实的不断学习,精进自己的技术,尤其是初学者。今天golang学习网给大家整理了《从另一个包和文件 golang 导入结构》,聊聊golang,我们一起来看看吧!

问题内容

我在尝试从另一个包和文件导入类型时遇到问题。我要导入的结构是下面的结构。

type PriorityQueue []*Item

type Item struct {
   value string
   priority int   
   index int 
}

如果我将 PriorityQueue 与其所有方法放在同一个文件中,我会声明它

pq:= &PriorityQueue{}

我一直在像疯子一样在互联网上搜索这个简单问题的答案,但我没有找到答案。我通常用java编程,导入类是如此的初级。

正确答案

在 Go 中,您不导入类型或函数,而是导入 (请参阅规范:导入声明)。

一个示例导入声明:

import "container/list"

通过导入一个包,您可以访问其所有 导出 的标识符,您可以将它们称为packagename.Identifiername,例如:

var mylist *list.List = list.New()

// Or simply:
l := list.New()

导入声明中有一些技巧,例如:

import m "container/list"

您可以使用 引用导出的标识符"m.Identifiername",例如

l := m.New()

也通过这样做:

import . "container/list"

您可以完全省略包名称:

l := New()

但仅在“紧急情况”或存在名称冲突(很少见)时使用这些。

以上就是《从另一个包和文件 golang 导入结构》的详细内容,更多关于golang的资料请关注golang学习网公众号!

声明:本文转载于:Golang技术栈 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>
评论列表