代码搬运工 -_-||
template<typename T>
typename vector<T>::iterator Remove(const typename vector<T>::iterator& itBeg
, const typename vector<T>::iterator itEnd, const T& t)
{
if (itBeg == itEnd) { return itEnd; }
auto iter = itBeg;
while (iter != itEnd && *iter != t) { iter++; }
if (iter == itEnd) { return itEnd; }
for (auto itBack = std::next(iter); itBack != itEnd;)
{
if (*itBack != t)
{
*iter++ = *itBack++;
}
else
{
itBack++;
}
}
return iter;
}