我想在C ++中使用类似的方法:
if (__FreeBSD__8)
abc();
else if (__FreeBSD__10)
xyz();
目前我只能看到
if ( __FreeBSD_)
do_something();
提前感谢您的回答
答案 0 :(得分:2)
实际上,the proper way包含<sys/param.h>
并检查__FreeBSD_version
。它为您提供非常准确的版本值,因此您甚至可以检查特定功能的存在。 FreeBSD版本和功能列表is here。
答案 1 :(得分:0)
找到了解决方案。
我们可以这样做:
#if (defined(__FreeBSD__) && (__FreeBSD__ == 8))
abc();
#elif (defined(__FreeBSD__) && (__FreeBSD__ == 10))
xyz();