矢量与恒定的大小

dzh*_*lil 11 c++ arrays static vector

我正在寻找类似std::vector但没有与动态调整大小相关的开销的C++数据类型.容器的大小在其生命周期内保持不变.boost::array但是,我认为使用它是不合适的,因为它需要在编译时知道数组的大小,在我的情况下并非如此.

Mar*_*ull 15

在使用任何非标准之前测量动态调整大小是否确实对性能产生任何影响.

提示:使用vector.reserve,永远不会有任何数组重新分配.


Nor*_*ame 10

如果不重新分配std :: vector,则重新分配没有任何开销.所以要么:

  • 构造前面已知大小的std :: vector(std::vector x(100))
  • 在构造之后调用reserve(n)以确保在重新分配之前可以将至少n个元素推入向量中.