您的位置:首页 > 编程语言 > C语言/C++

C++每日一练(STL算法——copy)

2016-11-07 18:23 399 查看

一、今日课题

sort

二、实战演练

如果要把一个序列(sequence)拷贝到一个容器(Container)中去,通常用std::copy算法,代码如下:

std::copy(start, end, std::back_inserter(container));


1)有何用?

用于容器之间元素的拷贝,即将迭代器区间[first,last)的元素复制到由复制目标result给定的区间[result,result+(last-first))中。

2)怎么用?

#include <iostream>
#include <algorithm>
#include <vector>

using namespace std;

int main()
{
int myints[] = { 10, 20, 30, 40, 50, 60, 70 };
vector<int> myvector;
vector<int>::iterator it;

myvector.resize(7);   // 为容器myvector分配空间

//copy用法一:
//将数组myints中的七个元素复制到myvector容器中
copy(myints, myints + 7, myvector.begin());

cout << "myvector contains: ";
for (it = myvector.begin(); it != myvector.end(); ++it)
{
cout << " " << *it;
}
cout << endl;

//copy用法二:
//将数组myints中的元素向左移动一位
copy(myints + 1, myints + 7, myints);

cout << "myints contains: ";
for (size_t i = 0; i < 7; ++i)
{
cout << " " << myints[i];
}
cout << endl;

system("pause");
return 0;
}


三、C++树



11/7/2016 6:13:19 PM
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: