问题
给定一个包含10个元素的vector,
将位置3到7之间的元素按逆序拷贝到一个list中.
源代码
/*************************************************************************
> File Name: test.10.37.cpp
> Author: puruidong
> Mail: 1@w1520.com
> Created Time: 2014年06月23日
************************************************************************/
#include
#include
#include
#include
#include using namespace std;
/*****************************
给定一个包含10个元素的vector,将位置3到7之间的元素按逆序拷贝到一个list中.
**********************************/
int main()
{
vector
list
vector
lst.insert(lst.begin(),(it+3),(it+7));
for(auto &s:lst)
{
cout << s << endl;
}
return 0;
}
我碰到这题一开始的思路是直接构造出需要的 list,但是不知道该怎么搞。看到你用 insert 做感觉也行的通,但是试了一下,不能通过编译。
然后又找了会儿,这种直接构造的看上去漂亮多了 😀
list lst(vec.crbegin()+3, vec.crend()-3);