我正在尝试写一个Gowrapper https://github.com/deft-code/go-enet using CGo http://golang.org/cmd/cgo/ for ENet https://github.com/lsalzman/enet.
当我尝试在 Mac 上编译我的包装器时,该库比较旧,并且界面略有不同。 99% 的代码是相同的,只是需要更改一些 C 调用。
在 Go 中处理此类问题的最佳实践是什么?
有没有办法进行条件编译或条件导入?
将特定于平台的内容分离到一个单独的文件中,例如东西.go
现在将 stuff.go 替换为不同平台的版本,例如 stuff_darwin.go(适用于 Mac)、stuff_windows.go、stuff_linux.go 等。
如果文件具有这样的后缀,go 命令将仅在指定的平台上编译它。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)