矢量删除操作
void del(vector<int> & st){
auto pr = st.begin(), tp = pr;
for (; pr != st.end(); pr++)
for (tp = pr + 1; tp != st.end(); tp++)
if (*tp == *pr)
st.erase(tp, tp + 1);
}
int main()
{
........
vector<int> s = { 35, 46, 57, 13, 24, 35, 68, 13, 79, 88, 46 };
del(s);
.........
}
这是我写的一个函数,用来删除矢量中重复的数字,调试时发现,删除第一个重复的数字就出错了,求帮忙!