Vector STL向量pf指向向量是我的最佳选择吗?

Vector STL向量pf指向向量是我的最佳选择吗?,vector,stl,Vector,Stl,我现在有一吨向量都设置为有1200个项目,这是多余的,但可以使用。所以我不需要重新编码很多东西,创建和迭代这些向量列表并根据需要调整它们的大小的最佳方法是什么?(它们的大小都一样) 我的一个选择是(事后)创建指向每个向量的指针,然后创建这些指针的向量,这些指针可以通过迭代来调整大小。另一个选择是首先创建向量作为指针,而不是对象。这看起来需要做很多工作,我现在有很多代码使用向量对象 还有其他选择吗 < C++ > Fred E. > /p> < p> >代码>:ST::vector < /COD>

我现在有一吨向量都设置为有1200个项目,这是多余的,但可以使用。所以我不需要重新编码很多东西,创建和迭代这些向量列表并根据需要调整它们的大小的最佳方法是什么?(它们的大小都一样)

我的一个选择是(事后)创建指向每个向量的指针,然后创建这些指针的向量,这些指针可以通过迭代来调整大小。另一个选择是首先创建向量作为指针,而不是对象。这看起来需要做很多工作,我现在有很多代码使用向量对象

还有其他选择吗


< C++ > Fred E. > /p> < p> >代码>:ST::vector < /COD>只是一个原始数据指针的包装器。向量本身在堆中存储数据。因此,可以将向量作为对象存储在向量中,也可以存储指向它们的指针

最简单的方法是将向量作为对象存储在向量中,但必须仔细监视如何将此外部向量传递到函数中。您应该始终通过引用传递它或传递指向它的指针,以免触发复制所有嵌套向量。另一方面,当析构函数触发时,这样的向量将自动正确地删除嵌套向量

指向向量的指针向量有其优点和缺点。一方面,当使用此向量作为参数不准确地调用函数时,只会复制指针。另一方面,通过指针访问向量会影响性能。此外,在存储指向向量的指针时,必须注意自己删除它们

如果您的向量是在其他地方创建和删除的,您只需要在代码中迭代并修改它们,那么显然指向向量的指针向量是您的最佳选择