Нет, remove
и remove_if
только перемещают объекты в последовательности.Вам нужно вызвать erase, чтобы сделать последовательность на самом деле короче.Возвращаемое значение remove и remove_if - это итератор, который можно использовать в вызове erase
для сокращения последовательности:
sequence.erase(remove(...),sequence.end());