D语言遍历结构的成员

示例

import std.stdio;

struct A {
    int b;
    void c();
    string d;
};

void main() {
    // 以下foreach在编译时展开
    foreach(name; __traits(allMembers, A)) {
        pragma(msg, name);
    }
}

该allMembers特征返回包含给定类型的成员的名称定义字符串的元组。这些字符串在编译时是已知的。