vector erase not working c++

#include <iostream>
#include <vector>

int main() {
    std::vector<int> numbers = {1, 2, 3, 4, 5};

    // Attempting to erase element at index 2
    std::vector<int>::iterator it = numbers.begin() + 2;
    numbers.erase(it);

    // Displaying the modified vector
    std::cout << "Modified vector: ";
    for (int num : numbers) {
        std::cout << num << " ";
    }

    return 0;
}