d类型信息与更好C
import std.algorithm, std.range, std.conv;
void foo() {
assert(2 == iota(2).map!(n => to!string(n)).length);
}
因为,TypeInfo,化简为:
__gshared val = __traits(compiles, to!());
void to()()
{
auto ti = typeid(char[]);
}
//dmd -c -o- -betterC -verrors=spec test.d
但,最新主分支,如下编译:
import std.algorithm, std.range, std.conv;
void foo() {
assert(2 == iota(2).map!(n => to!string(n)).length);
}
extern (C) void main() { foo(); }
即使带-betterC,也编译.
浙公网安备 33010602011771号