C++ STL copy_backward, move_backward 用法
一:功能
反向(从后向前的顺序)拷贝/移动操作,将一个容器元素拷贝/移动到另一容器中。
此处需要解释一下:从后向前并不是逆序,它的意思是源容器和目标容器都从尾部开始,然后向前迭代,执行拷贝/移动操作。
二:用法
#include <iostream>
#include <iomanip>
#include <vector>
#include <algorithm>int main() {std::vector<std::string> data{ "a", "b", "c", "d", "e", "f"};std::vector<std::string> out(9, "");for (auto &v : out)std::cout << std::quoted(v) << " ";std::cout << "\n";std::copy_backward(data.begin(), data.end(), out.end());for (auto &v : out)std::cout << std::quoted(v) << " ";std::cout << "\n";std::copy_backward(data.begin(), std::prev(data.end()), data.end());for (auto &v : data)std::cout << std::quoted(v) << " ";std::cout << "\n";
}