小编ord*_*han的帖子

如何在编译时检查DMD版本?

我可以测试DMD正在使用编译给定代码version(DMD){},但是如何检查它的哪个版本?(2.66/2.65等)

更简洁地说,我想检查@nogc修改器是否存在,如果不存在 - 定义一个虚拟修改器.

我提出了一个解决方法:

static if(!__traits(compiles, ()@nogc{}))
{
    struct nogc;
}
Run Code Online (Sandbox Code Playgroud)

但有更好的方法吗?例如,甚至直接检查特定修饰符的存在?

d version conditional-compilation dmd

4
推荐指数
1
解决办法
233
查看次数

标签 统计

conditional-compilation ×1

d ×1

dmd ×1

version ×1