3

这是我正在尝试做的一个非常淡化的版本,但请帮助我解决以下情况:

PackageA.go

package A

import "B"

type TestStruct struct {
  Atest string
}

func Test() {
  test := TestStruct{"Hello World"}
  B.Test(test)
}

包B.go

package B

import "fmt"

func Test(test TestStruct) {
  fmt.Println(test.Atest)
}

undefined: test当它击中包 B 时失败

基本上,我在将结构从一个包传递到另一个包时遇到问题,甚至在传递充当指向其他结构或函数的指针的变量时遇到问题。

任何指针都会非常有帮助。

4

1 回答 1

9

将您的代码重组为:

package a

import "b"

func Test() {
    test := b.TestStruct{"Hello World"}
    b.Test(test)
}

b.go

package b

import "fmt"

type TestStruct struct {
    Atest string
}

func Test(test TestStruct) {
    fmt.Println(test.Atest)
}
于 2013-08-20T23:49:39.947 回答