首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

unique_copy复制出来的跟copy的结果如何是一样的

2012-07-08 
unique_copy复制出来的跟copy的结果怎么是一样的?结果输出:1 2 3 4 100 5 100也就是说这个函数没有做到把

unique_copy复制出来的跟copy的结果怎么是一样的?
结果输出:1 2 3 4 100 5 100
也就是说这个函数没有做到把不重复的元素复制到指定的容器中(这个程序结果是在vs2005中通过)

我又把这个程序移到vc6上运行,结果是内存不足,运行出错。

求解释!!!

#include <algorithm>
#include <vector>
#include <iostream>
#include <list>
//#include <string>
using namespace std;

int main()
{
int ia[] = {1, 2, 3, 4, 100, 5, 100};
list<int> iList(ia, ia + 7);
vector<int> iVect;
  
//将iList中不重复的元素复制到空的iVect中
unique_copy(iList.begin(), iList.end(), back_inserter(iVect));

cout << "Vector:";
for (vector<int>::const_iterator it = iVect.begin(); it != iVect.end(); ++it)
{
cout << *it << " ";
}
cout << endl;

return 0;
}



[解决办法]
因为你没有认真看unique_copy的使用条件。
[解决办法]
连续且重复的,才会略掉。

热点排行