c++ copy
时间: 2023-07-01 14:25:55 浏览: 50
在C++中,`copy` 函数可以用来将一个容器中的元素复制到另一个容器中。`copy` 函数定义在 `<algorithm>` 头文件中,其函数原型如下:
```cpp
template <class InputIt, class OutputIt>
OutputIt copy(InputIt first, InputIt last, OutputIt d_first);
```
其中,`first` 和 `last` 分别表示源容器的起始位置和结束位置(不包括结束位置),`d_first` 表示目标容器的起始位置。`copy` 函数会将 `[first, last)` 区间内的元素复制到 `[d_first, d_first + (last - first))` 区间中,并返回目标容器的结束位置。
下面是一个使用 `copy` 函数将一个容器中的元素复制到另一个容器中的例子:
```cpp
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int main() {
vector<int> src = {1, 2, 3, 4, 5};
vector<int> dst(5);
copy(src.begin(), src.end(), dst.begin());
for (int i = 0; i < dst.size(); i++) {
cout << dst[i] << " ";
}
cout << endl;
return 0;
}
```
在上面的例子中,我们定义了一个名为 `src` 的 vector 容器,并初始化为 `{1, 2, 3, 4, 5}`。然后,我们定义了一个名为 `dst` 的 vector 容器,并指定其大小为 `5`。接着,我们调用 `copy` 函数来将 `src` 中的元素复制到 `dst` 中。最后,我们遍历 `dst` 容器,并输出其所有元素。
希望这个例子能够帮助你理解如何使用 `copy` 函数在C++中复制容器中的元素。