Reading the documentation, your last example should erase all the elements from begin up to wherever _it is. Is that what you want? I think the first version in the documentation, would suit your needs better.
You need to be careful using the iterator after erase, because they are invalidated from position to end().
Why do name variables with a leading underscore? My Personal opinion is that, it is unnecessary and harder to read.