我正在学习Go语言,这符合我自己的兴趣。我来自一个典型的OO编程。
我有点不习惯使用另一个文件中存在的方法。
所以,D:\lib\pac\abc.go
有一个名为
func dosomething()
{
}
现在,我在同一个位置创建了另一个名为def.go的文件
在这个文件中,我正在编写函数来调用abc.go,但是当我使用$ go test
func defFunc()
{
//call dosomething
}
这两个文件也在同一个包中。有关此问题的任何暗示吗?
答案 0 :(得分:8)
请阅读http://golang.org/doc/code.html并正确设置GOPATH工作区。
完成此操作后,应该没有问题,因为单个Go包中的所有文件都能够访问包中任何文件中声明的符号。
答案 1 :(得分:4)
从golang.org上的http://tour.golang.org/和其他初学者文档开始。
在你的例子中,我看到你在下一行有你的大括号,这是一个错误,因为编译器会自动插入分号,将代码转换为
func dosomething(); // error
{
// code in its own scope that has nothing to do with dosomething()
}