Dilema
Pertimbangkan mengikuti coretan kod Go:
//go:build (386 || amd64 || amd64p32) && gccgo // +build 386 amd64 amd64p32 // +build gccgo package cpu
Sebagai teg binaan, // binaan nampaknya cukuplah. Mengapa //go:build dinyatakan secara eksplisit? Dan mengapa sukar untuk mencari dokumentasi untuk //go:build manakala // build mempunyai dokumentasi yang luas?
Go 1.18: A New Path
Arahan baharu / /go:build kini merupakan pendekatan kompilasi bersyarat pilihan, dan rantai alat secara aktif mengalih keluar binaan // lama arahan.
Go 1.17: Pengenalan //go:build
//go:build telah diperkenalkan dalam Go 1.17 untuk menggantikan // build. Ia menawarkan beberapa kelebihan:
Kewujudan Bersama dan Peralihan
Kedua-dua arahan wujud bersama untuk peralihan yang lancar.
Perubahan Sintaksis dan Keserasian
Melangkah Ke Hadapan
//go:build ialah pendekatan yang disyorkan untuk penyusunan bersyarat dalam Go. Sintaksnya yang dipertingkat, keserasian Go fmt dan kewujudan bersama dengan // build memastikan peralihan yang lancar ke masa depan pembangunan Go.
Atas ialah kandungan terperinci `//go:build vs // build: Arahan Kompilasi Bersyarat Mana Yang Perlu Anda Gunakan dalam Go?`. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!