我可以在运行时将std :: vector转换为std :: tuple吗?

时间:2014-10-03 16:03:29

标签: c++ c++11 stl

我有一个std :: vector(具有可变数量的元素),我试图将其转换为std :: tuple以传递给另一个函数。是否可以在运行时执行此操作?

1 个答案:

答案 0 :(得分:3)

你做不到。元组是一个编译时容器,包含一定数量的元素。这意味着处理元组的代码是在编译时生成的,并且取决于您为元组指定的元素数。

同时,对于您正在调用的函数也是如此:您只能使用特定类型的元组调用它。传递对您已经拥有的矢量的引用似乎是一个更好的解决方案。