d给参数加别名.

mixin template parameterAliases(names...)
{
    static if (is(typeof(__traits(parent, {})) params == __parameters))
    static foreach (i, name; names)
        mixin("alias ", name, " = ", __traits(identifier, params[i..i+1]), ";");
}

int foo(int, int)
{
    mixin parameterAliases!("x", "y");
    return x + y;
}
posted @ 2022-01-20 18:51  zjh6  阅读(48)  评论(0)    收藏  举报  来源