回 帖 发 新 帖 刷新版面

主题:STL中copy函数ostream_iterator<int>(cout,"

 #include <iostream>
#include <list>
#include <deque>
using namespace std;
//输出指定的整型顺序容器的元素
template<class T>
void printContainer(const char* msg, const T& s) {
cout << msg << ":";
copy(s.begin(), s.end(), ostream_iterator<int>(cout, " "));
cout << endl;
}
int main() {
//从标准输入读入10个整数,将它们分别从s的头部加入
deque<int>s;
for (int i = 0; i < 10; i++) {
int x;
cin >> x;
s.push_front(x);
}
printContainer("deque at first",s);
//用s容器的内容的逆序构造列表容器1
list<int> l (s.rbegin(), s.rend());
printContainer("list at first", l);
//将列表容器l的每相邻两个容器顺序颠倒
list<int>::iterator iter = l.begin();
while (iter != l.end()) {
int v = *iter; //得到一个元素
iter = l.erase(iter); //将该元素删除,得到指向下一个元素的迭代器
l.insert(++iter, v); //将刚刚删除的元素插入下一个位置
}
printContainer("list at last", l);
//用列表容器l的内容给s赋值,将s输出
s.assign(l.begin(), l.end());
printContainer("deque at last", s);
return 0;
}
各位 问下 这个程序再编译的时候提示 copy(s.begin(), s.end(), ostream_iterator<int>(cout, " "));中的<int> 是一个意外类型 
编译不通过 
这个是什么原因造成的 

回复列表 (共1个回复)

沙发

C语言程序设计最新视频教程(2016)
C语言特训班内部视频,坚持30天,您就是C语言高手
高清完整版本百度网盘下载地址:
http://pan.baidu.com/s/1mhgTrrM
http://yun.baidu.com/share/link?shareid=921555821&uk=948035159
备注:赶紧下载,以备后用,以免链接失效
C语言程序设计交流QQ群(5140-31772)

我来回复

您尚未登录,请登录后再回复。点此登录或注册