您能否建议一种在 std::vector 中的另一个值之前插入一个值的更好方法:
template<class T>
void insert(std::vector<T>& container, const T& valueToInsertBefore, const T& valueToInsert)
{
std::vector<T>::iterator i = container.begin();
std::vector<T>::iterator end = container.end();
for(;i!=end;++i)
{
if(*i==valueToInsertBefore)
{
i = container.insert(i, valueToInsert);
i++;
end = container.end();
}
}
}
更新:
应该为在 std::vector 中找到的每个 valueToInsertBefore 实例插入。