我想要一个创建未确定数量的列表的程序。每个列表的大小是固定的,但我无法在编译时确定我需要多少列表。
我知道我无法创建数组向量。我也理解我可以使用向量向量,但我想知道这是否是最有效的方法,考虑到每次我需要一个新数组时我需要保留固定数量的内存。
答案 0 :(得分:5)
嗯,你可以使用数组向量,例如,
std::vector<std::array<T, N>> some_vec;
答案 1 :(得分:2)
@Nim是对的,但我还不能投票:p 他的解决方案也是C ++ 11。
另一个比std::vector<std::vector<T> >
更受欢迎的选择是使用一个尺寸为X * Y的向量。然后你可以用v [y * Y + x]访问你的元素;
这适用于所有版本的C ++,应该与std::vector<std::array<T, N> >
解决方案一样高效。