//go:build 和 // build 之间的区别
在 Go 1.17 中,引入了一个名为 //go:build 的新条件编译指令来替代旧的 // 构建指令。虽然这两个指令都具有指定构建约束的相同目的,但使用 //go:build.
语法差异:
实现详细信息:
//go:build:
用法:
虽然这两个指令都用于指定构建约束,但 //go:build 通常是首选,因为以其优势。下面是演示这两个指令用法的示例:
//go:build linux && amd64 package main // build linux,amd64 package main
在此示例中,两个指令将实现相同的结果,即仅在针对 Linux 和 64 位 AMD 架构进行编译时包含主包。
结论:
//go:build 与 // build 相比有几个优点,包括一致的语法、改进的错误消息和 go fmt 支持。它是 Go 1.17 及更高版本中指定构建约束的首选指令。
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3