[有一个生成器,每次迭代生成一个16个整数的元组。我想将这些元组添加到向量中。创建矢量时,我必须写std::vector<std::tuple<int, int, .... 16 times>>
。还有另一种方法来创建这些元组的向量。
用于测试包含5个整数的元组的情况的代码:
#include "cppitertools/itertools.hpp"
#include <iostream>
#include <tuple>
#include <vector>
int main()
{
std::vector<int> v1{0, 1};
std::vector<std::tuple<int, int, int, int, int>> states;
for (auto&& i : iter::product<5>(v1))
{
states.push_back(i);
}
auto size = states.size();
std::cout << size << std::endl;
}
我正在使用cppiterator
我相信这应该有效:
int main()
{
std::vector<int> v1{0, 1};
using the_tuple = decltype(iter::product<16>(v1));
std::vector<the_tuple> states;
for (auto&& i : iter::product<16>(v1))
{
states.push_back(i);
}
auto size = states.size();
std::cout << size << std::endl;
}