【发布时间】:2011-06-28 08:34:15
【问题描述】:
我的代码使用boost::tuple。
假设我想存储一个具有 3 个成员的结构的等价物
typedef boost::tuple< std::string, int, double > my_struct;
有没有什么方法可以调用tuple,这会给我包含的成员数量,所以在这种情况下为 3?
我的目标是监控何时增加模板参数的数量。
【问题讨论】:
-
您能否详细说明一下“监控增加模板参数的数量”?这有什么意义?您只能在编译时增加参数的数量,如果您以
tuple<T...>或T的形式传递一个元组,无论如何您都必须“循环”它。 -
不是您问题的直接答案,但在 C++11 中,
std::tuple_size<tuple>::value给出了std::tuple的参数数量。 -
pmr:想在我从 tuple 切换到 tuple 时实现。我基本上想在我的代码的某个点始终断言这个条件。
标签: c++ tuples boost-tuples