我试图找到copy(copy_if)和remove_copy(remove_copy_if)stl算法之间的任何区别,但似乎没有任何实际差异而不是:
Source and destination ranges cannot overlap 在remove_copy算法
这些算法确实存在重大且实际的差异吗?
答案 0 :(得分:3)
copy_if仅复制满足给定谓词的元素,remove_copy_if另一方面仅复制不满足指定谓词的元素。因此这两个功能相互补充,它们不相同。
顺便说一下copy_if也有类似的声明The behavior is undefined if the source and the destination ranges overlap.
因此可能没有检查它,但是让源和目标重叠是非常糟糕的。