伙计! 我想了解迭代器的工作,所以在下面的代码中,是否可以将back_inserter更改为front_inserter而不更改基础数据(结构)。 请你解释一下为什么。如果改变是可能的考虑它的关键想法。使用front_inserter而不是back_inserter
int a1[] = { 0, 1, 2, 3, 4, 5, 6 };
int a2[] = { 1, 4, 5 };
std::vector<int> a3;
int a4[] = { 0, 2, 3, 6 };
std::set_difference(a1, a1 + 7, a2, a2 + 3, std::back_inserter(a3));
assert(std::equal(a3.begin(), a3.end(), a4));
谢谢大家!
你试过了吗? –
不,这是不可能的。它需要一个支持'push_front'的容器。 – juanchopanza
@AndyProwl出色的响应:) –