我有一个std::vector
,我想要一个仅包含原始 vector 的最后n个元素的单独的std::vector
。除了整个 vector 被一个接一个地插入的循环之外,还有没有更清洁的方法?
最佳答案
int n = 5;
std::vector<int> x = ...;
std::vector<int> y(x.end() - n, x.end())
当然,如果x.size()
稍微讲一点,
std::vector
(像大多数标准库容器一样)有一个带有一对迭代器的构造函数。它使用从第一个迭代器到第二个迭代器的所有项填充 vector 。