我设想一个算子解决。
metainfo *mtp;
mtp=get_metainfo(xxx_struct);
这是一个算子,不是函数,普通的函数是无法根据struct去寻找其metainfo的。这一步必须由编译器直接处理。
以后,在运行时使用metainfo就随便了。
而且不管C或C++都可以使用。
然后这样使用mtp就可以了:
struct_to_JSON(json,&xxx_struct,mtp);
这个函数是通用函数,与xxx_struct不在一个编译环境,也不认识它,全靠mtp指引。
如果metainfo是公开的,当然也可以由数据库表构建。
【 在 ae175b1bf388 的大作中提到: 】
: 我觉得是代码里用到的类型metainfo编译进去了, 没用到的就省掉了, 可能理解有误
: 静态反射一点用没有。既然还没脱离编译环境,要反射干啥,直接用成员好了。
--
修改:ylh1969 FROM 221.218.61.*
FROM 221.218.61.*