BOOL CalcDiff( vector<int>& vecOne, vector<int>& vecTwo, vector<int>& vecDiff )
{
sort( vecOne.begin(), vecOne.end(), SortID() ); // 排序
set_difference( vecOne.begin(), vecOne.end(), vecTwo.begin(), vecTwo.end(), back_inserter( vecDiff ), SortID() );// 取差集
vecTwo = vecOne;
return TRUE;
}
set_difference
用于求两个集合的差集,结果集合中包含所有属于第一个集合但不属于第二个集合的元素。
函数返回值:结果集合的结束位置迭代器。
参数:第一个集合的开始位置,第一个集合的结束位置,第二个参数的开始位置,第二个参数的结束位置,结果集合的插入迭代器。