在c ++中清除对的向量?

时间:2015-02-27 13:03:43

标签: c++

我有一个矢量 static std::vector<std::pair<int,std::string> > m_Data; 我想在填写新值之前清除内容, 这是一个正确的方法吗?

m_Data.clear().

你怎么称呼这样的载体?对矢量?

2 个答案:

答案 0 :(得分:2)

是的。但是你可以在清除矢量之前清除你的一对。绝对确定你有像valgrind这样的工具。

  

的std ::矢量::清楚   清除内容从向量中删除所有元素(即   ()),将容器的大小保留为0。

src:http://www.cplusplus.com/reference/vector/vector/clear/

答案 1 :(得分:1)

答案很晚,但我现在遇到了同样的问题:D
我有std::vector< std::pair< int, std::vector< MyClass > > > complexVector。 如果我调用complexVector.clear(),内容未被清除,我明确必须迭代complexVector并调用complexVector[i].second.clear()以删除内部向量的内容。另外明确first
我很高兴有关“更好”的建议。解决方案:)