딜레마
다음을 고려하세요. 다음 Go 코드 조각:
//go:build (386 || amd64 || amd64p32) && gccgo // +build 386 amd64 amd64p32 // +build gccgo package cpu
빌드로 태그, // 빌드가 충분해 보였습니다. //go:build가 명시적으로 지정된 이유는 무엇입니까? //build에 광범위한 문서가 있는데 왜 //go:build에 대한 문서를 찾기 어려운가요?
Go 1.18: A New Path
새로운 지시어 / /go:build는 이제 선호되는 조건부 컴파일 접근 방식이며 툴체인은 오래된 // 빌드 지시문을 적극적으로 제거합니다.
Go 1.17: //go:build
//go:build 소개는 Go 1.17에서 // build를 대체하기 위해 도입되었습니다. 여러 가지 장점을 제공합니다.
공존 및 전환
두 지시어는 원활한 전환을 위해 공존합니다.
구문 변경 및 호환성
앞으로 나아가기
//go:build는 조건부 컴파일에 권장되는 접근 방식입니다. 가다. 향상된 구문, Go fmt 호환성 및 // 빌드와의 공존을 통해 Go 개발의 미래로 원활하게 전환할 수 있습니다.
위 내용은 `//go:build vs // build: Go에서 어떤 조건부 컴파일 지시어를 사용해야 할까요?`의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!