(C++)带有元数据信息的结构体

来源:互联网 发布:工程计算器软件下载 编辑:程序博客网 时间:2024/06/18 08:13

    C++的结构体和类不像C#和java那样有完整的元数据信息,但是我们可以用宏和模板近似地做到这一点。代码在这里:点击下载

    例如PersonInfo是一个超级结构体,那么可以这样使用:

#include "PersonInfo.h"#include <iostream>int main(){PersonInfo info;info.name = "Jack";info.age = 40;info.weight = 120;info.children.insert("son1");info.children.insert("son2");for (int propIndex = 0; propIndex < PersonInfo::propCount ; ++propIndex){std::cout<<info.GetInfoName(propIndex);std::cout<<"("<<info.GetInfoType(propIndex)<<"): ";std::cout<<info.GetInfoValue(propIndex);std::cout<<std::endl;}std::cin.get();return 0;}

    运行效果如下:



原创粉丝点击