#include<iostream>
#include<iterator>
#include<list>
#include<deque>
using namespace std
;
template<class T,class OutputIterator>
void printcontainer(const char*message
, const T
&s
, OutputIterator result
)
{
cout
<< message
<< ":";
copy(s
.begin(), s
.end(),result
);
cout
<< endl
;
}
int main() {
deque
<int>s
;
for (int i
= 0; i
< 10; i
++)
{
int x
;
cin
>> x
;
s
.push_front(x
);
}
printcontainer("deque at first",s
, ostream_iterator
<int>(cout
, " "));
list
<int>l(s
.rbegin(),s
.rend());
printcontainer("list at first", l
, ostream_iterator
<int>(cout
, " "));
list
<int>::iterator it
;
it
= l
. begin();
while (it
!= l
.end())
{
int temp
= *it
;
it
= l
.erase(it
);
it
++;
l
.insert(it
,temp
);
}
printcontainer("l中的每相邻两个容器顺序颠倒", l
, ostream_iterator
<int>(cout
, " "));
s
.assign(l
.begin(),l
.end());
printcontainer("l给s赋值", l
, ostream_iterator
<int>(cout
, " "));
system("pause");
return 0;
}
转载请注明原文地址: https://mac.8miu.com/read-62408.html