首页 > 解决方案 > std::vector 清除或与新向量交换

问题描述

有时我会在不同的 c++ 项目中检测到这样的代码:

std::vector<DataClass> _dataVec;
...

std::vector<DataClass>().swap(_dataVec);

这段代码是否比明显简单的 clear 调用更有效

_dataVec.clear();

或者这些代码示例有什么不同?

出于什么目的,我应该更喜欢第一个变体?

标签: c++vectorstl

解决方案


推荐阅读