使用STL向量连续分配对象

时间:2013-10-04 22:19:15

标签: c++ vector stl

我需要动态创建对象,并希望使用向量来做到这一点。我知道指向对象的指针将存储在向量中,它们将是连续的,但实际的对象不会。我可以按Create objects in pre-allocated memory中给出的那样做。但是,我更喜欢使用矢量。我有什么方法可以这样做吗?

2 个答案:

答案 0 :(得分:1)

  

“我需要动态创建对象”

您真的确定需要动态分配吗?如果可能,请使用对象向量:

std::vector<T> myObjects(100);

这会分配单个内存块,足以容纳100个T实例,并使用默认构造函数初始化它们。

答案 1 :(得分:0)

创建向量时使用自定义分配器。您的分配器可以按您需要的方式预分配内存。