在 C++ 中是否可以确定泛型类中变量/字段的数量? 例如
// suppose I need metaclass number_members determines number of members
struct example { int i, j; };
assert(number_members<example>::value==2);
我查看了 mpl 但找不到实现。
谢谢。
最佳答案
没有。 C++ 不提供对结构的一般内省(introspection)。
你可以试试 C ++0x std::tuple
,它具有一般 POD struct
的一些特性。或者,尝试从 Boost MPL 中推出自己的图书馆。如果您刚开始使用 C++,那会有点高级。
关于C++ 模板元编程,成员变量的数量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2589861/