【问题标题】:Import package & type导入包和类型
【发布时间】:2018-03-23 06:42:46
【问题描述】:

这是我的问题和我的项目结构

src
|-->config
       |--> config.go
|-->otherPackage
       |--> otherFile.go
|-->main.go

我在config.go 上有一个类型,我想在otherFile.go 中使用它

但是当我尝试将其添加到这里的导入时,这些问题:

  1. imported and not used.
  2. undefined: Config

虽然我在函数声明中使用了它

function(target float64, entries [2]float64, config Config)

这有什么问题?

我尝试用

导入它
import (
    "fmt"
    "math"
    "../config"
)

【问题讨论】:

  • 如何导入?
  • @mic4ael 导入,我只是编辑我的帖子以回答您的问题
  • 您应该阅读的第一件事是How to Write Go Code

标签: go


【解决方案1】:

您不能“从包中导入 。你所能做的就是“导入整个包”。这意味着如果你 import "full/import/path/of/foo" 并且该包在开头通过package foo 声明自己被称为 foo,那么此包中的所有内容都必须由 foo 限定:

foo.Config

如果你的包被称为config,那么声明一个变量config 会影响整个包:所以你必须:

  1. 将配置变量重命名为例如cfg
  2. 从包配置中引用配置及其限定名称config.Config

【讨论】:

  • 对不起,我不太明白。我只需要在 otherFile 或 config.go 文件上重命名变量?
  • @kevingiroux 你可以这样做import cfg "path/to/config"。然后,您可以将该包称为cfg,即cfg.Configcfg.Var1cfg.Var2 等。
  • 最好的建议是:再次完成围棋之旅。然后阅读其他一些软件包并了解发生了什么。您必须建立理解,而不是应用机械修复。
  • 看来又是一个问题,我的GoPath配置不好。当我尝试 echo $GOPATH 我有 $Home/Document/workspace/go 但我搜索 $Home/go ...
  • 然后阅读如何编写 Go 代码并坚持 word for word .
猜你喜欢
  • 2010-09-16
  • 2022-08-23
  • 2011-12-13
  • 1970-01-01
  • 2014-01-12
  • 2018-02-26
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多