在不同平台中定义单独的行为

不同的平台可以具有相同方法的单独实现。此示例还说明了如何一起使用构建标记和文件后缀。

文件 main.go

package main

import "fmt"

func main() {
    fmt.Println("Hello World from Conditional Compilation Doc!")
    printDetails()
}

details.go

// +build !windows

package main

import "fmt"

func printDetails() {
    fmt.Println("Some specific details that cannot be found on Windows")
}

details_windows.go

package main

import "fmt"

func printDetails() {
    fmt.Println("Windows specific details")
}