c++でvector内の特定のインデックスを削除する方法は何ですか。

C++では、特定の添え字の要素を削除するために、erase()関数を使用することができます。erase()関数は、削除する要素の位置を指すイテレータを引数として受け取ります。最初の要素のイテレータを取得するためには、vectorのbegin()関数を使用し、そして削除する添え字を加算演算子で追加して、指定位置の要素のイテレータを取得することができます。以下はサンプルコードです:

#include <iostream>
#include <vector>

int main() {
    std::vector<int> vec = {1, 2, 3, 4, 5};
    int index = 2; // 要删除的下标

    // 获取指定下标的元素的迭代器
    auto it = vec.begin() + index;

    // 删除指定下标的元素
    vec.erase(it);

    // 输出删除后的vector
    for (auto num : vec) {
        std::cout << num << " ";
    }
    std::cout << std::endl;

    return 0;
}

出力結果は、1 2 4 5です。

bannerAds