使用go build myprogam.go
生成一个可执行文件,这是我熟悉编译器时所熟悉的。
但是,使用go run myprogram.go
不会创建任何可执行文件并仍然运行该程序。
这究竟是如何工作的,是创建然后删除的可执行文件,还是像翻译一样运行代码?
答案 0 :(得分:1)
创建临时可执行文件。 go测试也是如此。
go test
The package is built in a temporary directory so it does not interfere with the non-test installation.
您还可以运行fmt.Println(os.Args[0])
以查看正在创建的可执行文件。