go如何引用外部结构体

a.go中含有一结构体,想要在b.go中使用这个结构体,该如何做到?
目录:

-project/
  -pac1/
    -a.go
  -b.go

main在b.go中

我在a.go头部加入package pac1, 后在b.go中使用import "pac1"是无法正确引用的。
只有把pac1放在gopath下才能引用。

阅读 5.6k
4 个回答

建议读一本golang入门书,事半功倍

楼上说得对。。

请参考 https://golang.org/doc/code.html

项目文件结构应该是这样的

bin/
    hello                          # command executable
    outyet                         # command executable
pkg/
    linux_amd64/
        github.com/golang/example/
            stringutil.a           # package object
src/
    github.com/golang/example/
        .git/                      # Git repository metadata
    hello/
        hello.go               # command source
    outyet/
        main.go                # command source
        main_test.go           # test source
    stringutil/
        reverse.go             # package source
        reverse_test.go        # test source
    golang.org/x/image/
        .git/                      # Git repository metadata
    bmp/
        reader.go              # package source
        writer.go              # package source
    ... (many more repositories and packages omitted) ...
-$GOPATH/src
    -project/
      -pac1/
        -a.go
      -b.go

推荐方式是这样的

import "project/pac1"

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题