如何从 Go 中的另一个文件调用函数

新手上路,请多包涵

我想从 Go 中的另一个文件调用函数。任何人都可以帮忙吗?

test1.go

 package main

func main() {
    demo()
}

test2.go

 package main

import "fmt"

func main() {
}

func demo() {
    fmt.Println("HI")
}

如何调用 demotest2 来自 test1

原文由 user1788542 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 848
2 个回答

您的包裹中不能有多个 main

更一般地说,一个包中不能有多个具有给定名称的函数。

删除 main 中的 test2.go 并编译应用程序。 demo 函数将从 test1.go 可见。

原文由 Denys Séguret 发布,翻译遵循 CC BY-SA 3.0 许可协议

Go Lang 默认只构建/运行提到的文件。要链接所有文件,您需要在运行时指定所有文件的名称。

运行以下两个命令之一:

 $go run test1.go test2.go. //order of file doesn't matter
$go run *.go

如果你想构建它们,你应该做类似的事情。

原文由 rai.skumar 发布,翻译遵循 CC BY-SA 3.0 许可协议

推荐问题