GO言語にはプリプロセッサがありますか?インターネットで調べたところ、*.pgoを*.goに変換する方法はいくつかありました。Goでそれができるかどうか疑問です。
#ifdef COMPILE_OPTION
{compile this code ... }
#elif
{compile another code ...}
または、#undef in c
ベストアンサー1
これを実現する最も近い方法は、ビルド制約。 例:
メイン.go
package main
func main() {
println("main()")
conditionalFunction()
}
前
// +build COMPILE_OPTION
package main
func conditionalFunction() {
println("conditionalFunction")
}
b.go
// +build !COMPILE_OPTION
package main
func conditionalFunction() {
}
出力:
% go build -o example ; ./example
main()
% go build -o example -tags COMPILE_OPTION ; ./example
main()
conditionalFunction