if you need to erase an element inside of a for-loop, do the following:

 int i = 0;
 while(i < vec.size()){

 if(condition)
 vec.erase(vec.begin() + i);
 else
 ++i;

 }