繁体   English   中英

新向量的向量

[英]Vector of new vectors

假设我有一个动态分配向量的向量,例如:

std::vector<std::vector<double>*> map;

我是否必须手动解除分配 map 中的每个向量,或者它们是由向量析构函数本身自动解除分配的? 如果我必须手动完成,这是 go 的好方法吗:

for(auto& t : map) delete[] t;

您需要使用delete而不是delete []来释放它们,因为向量不是数组。

但我看不出你不使用的任何理由

std::vector<std::vector<double>>

这样你就不需要担心向量的分配

我是否必须手动解除分配 map 中的每个向量,还是自动解除分配

如果您手动分配,那么您必须手动解除分配(除非您将所有权转移到智能指针,在这种情况下您最好不应该首先手动分配)。

手动分配向量不是一个好方法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM