c++ - std::vector 清除或与新向量交换
问题描述
有时我会在不同的 c++ 项目中检测到这样的代码:
std::vector<DataClass> _dataVec;
...
std::vector<DataClass>().swap(_dataVec);
这段代码是否比明显简单的 clear 调用更有效
_dataVec.clear();
或者这些代码示例有什么不同?
出于什么目的,我应该更喜欢第一个变体?
解决方案
推荐阅读
- php - 如何使用递归函数在 PHP 中生成包含分层评论回复系统的一维数组?
- jquery - 如何通过 jQuery AJAX 发送多组相互关联的数据属性?
- rest - 获取特定组 id 的用户
- color-space - 如何使用 PIL 库将图像从 YCRCB 转换为 RGB?
- r - 将流程图作为R中的顺序文本读取
- php - PHP + cURL 获取不应该存在的文件
- docker - 使用 docker 容器运行 .Net Core 应用程序,但我遇到了类似“0.0.0.0:7001->7001/tcp”的问题
- django - 无法在 django 的多对可能字段上添加来自其他数据库的值
- java - 没有spring应用程序的spring重试
- c# - 在 WPF TextBox 中显示提示文本的参数化样式