C++中的copy函数是一个非常有用的函数,它可以用来拷贝一个容器中的元素到另一个容器中。copy函数的原型是:
templateOutputIterator copy (InputIterator first, InputIterator last, OutputIterator result);
其中,InputIterator是指被拷贝的容器的迭代器,OutputIterator是指拷贝到的容器的迭代器,first和last是指被拷贝容器的起始和结束位置,result是指拷贝到的容器的起始位置。
copy函数的使用方法很简单,以下是一个简单的例子:
#include#include int main() { std::vector vec1; std::vector vec2; // 向vec1中添加元素 vec1.push_back(1); vec1.push_back(2); vec1.push_back(3); // 使用copy函数将vec1中的元素拷贝到vec2中 std::copy(vec1.begin(), vec1.end(), std::back_inserter(vec2)); return 0; }
上面的例子中,我们使用copy函数将vec1中的元素拷贝到vec2中,vec1的起始位置和结束位置分别是vec1.begin()和vec1.end(),vec2的起始位置是std::back_inserter(vec2)。
除了上面的例子,copy函数还可以用来拷贝数组,以下是一个拷贝数组的例子:
#includeint main() { int arr1[] = {1, 2, 3}; int arr2[3]; // 使用copy函数将arr1中的元素拷贝到arr2中 std::copy(arr1, arr1 + 3, arr2); return 0; }
上面的例子中,我们使用copy函数将arr1中的元素拷贝到arr2中,arr1的起始位置和结束位置分别是arr1和arr1 + 3,arr2的起始位置是arr2。
copy函数是一个非常有用的函数,它可以用来拷贝容器和数组中的元素,使用起来也非常方便,值得推荐。