d语言混合类型与串的插件
mixin template templateUGC ( typeStringUTF, string lstrStructureID){
mixin("public struct "~lstrStructureID ~ q{
{
typeStringUTF whatever;
}
});
}
mixin templateUGC!(string, "gudtUGC08");
mixin templateUGC!(dstring, "gudtUGC16");
mixin templateUGC!(wstring, "gudtUGC32");
void main() {
gudtUGC32 something;
}
注意,如果这样:
mixin template templateUGC ( typeStringUTF, alias AA){
public struct AA {
typeStringUTF whatever;
}
}
//所以其不是`变量的值`.
mixin templateUGC!(string, "BB");
生成的是AA构,与BB无关.
public struct mixin(lstrStructureID) { ... }//无用
mixin("public struct " ~ lstrStructureId ~ " { ... } ");
//这样
而上面插件是没用的,因为插件的参数,要求是语句.
所以,必须像上面的下面那样插件.
浙公网安备 33010602011771号