使用 go build myprogam.go
生成一个可执行文件,这是我在使用编译器时熟悉的文件。
但是,使用 go run myprogram.go
不会创建任何可执行文件并仍然运行该程序。
这到底是如何工作的,是创建然后删除可执行文件,还是像解释器一样运行代码?
最佳答案
创建了一个临时可执行文件。 go test也是如此。
关于go test
的文档
该包构建在一个临时目录中,因此它不会干扰非测试安装。
您还可以运行 fmt.Println(os.Args[0])
来查看正在创建的可执行文件。
关于go - 在 go 编译器中使用 run 命令时,可执行文件会发生什么情况?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40434532/