C++,2D std::vector,我是否需要显式保留并推回空 vector ?

标签 c++ vector

当我制作 2D vector 时。 std::vector<std::vector<Pokemon>> pokemons;

我可以立即运行这个吗: Pokemon pikachu = ... pokemons[23].push_back(Pikachu);

或者我需要: pokemons.reserve(100); for (int i =0;i<100;i++) pokemons.push_back(vector<Pokemon>());

谢谢

最佳答案

构建时可以设置外 vector 的初始大小

std::vector<std::vector<Pokemon>> pokemons(100);

它将构建 100 个内部空 vector 。

关于C++,2D std::vector,我是否需要显式保留并推回空 vector ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47223791/

相关文章:

function - 我想将一个向量的引用传递给一个函数,然后在那里修改它并作为向量返回

c++ - 使用 push_back 在类中填充结构的值

c++ - Axis/C MIME/DIME 和 MTOM 入门

c++ - 有没有办法在 C++ 中访问外部范围内的局部变量?

c++ - Boost 事件日志未正确显示事件

c++ - 对模板的`vtable 的 undefined reference

c++ - 在 C++ 中将 push_back 用于 vector

c++ - struct 中的 vector 指针无法转换 main 中的 vector ,这是怎么回事?

c++ - C++: vector 数组

C++ 派生类数组重新分配