C++中copy函数的用法
时间: 2023-09-03 21:16:45 浏览: 96
实现copy功能
5星 · 资源好评率100%
在C++中,copy函数定义在< algorithm >头文件中。它的作用是将一个序列中的元素复制到另一个序列中,可以用于将一个数组的元素复制到另一个数组中,也可以用于将一个容器中的元素复制到另一个容器中。copy函数的语法如下:
```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))范围内,并返回目标序列中最后一个被复制元素的下一个位置。
例如,以下代码将一个vector中的元素复制到另一个vector中:
```cpp
#include <iostream>
#include <vector>
#include <algorithm>
int main()
{
std::vector<int> vec1 = {1, 2, 3, 4, 5};
std::vector<int> vec2(5);
std::copy(vec1.begin(), vec1.end(), vec2.begin());
for (auto i : vec2) {
std::cout << i << " ";
}
std::cout << std::endl;
return 0;
}
```
输出:
```
1 2 3 4 5
```
在这个例子中,copy函数将vec1中的元素复制到vec2中,最终输出了vec2中的元素。
阅读全文