首頁 > 後端開發 > C++ > 如何在 C 中按值擦除向量元素?

如何在 C 中按值擦除向量元素?

Mary-Kate Olsen
發布: 2024-11-08 13:02:02
原創
124 人瀏覽過

How to Erase Vector Elements by Value in C  ?

在 C 中按值擦除向量元素

在 C 中使用向量時,通常需要刪除特定元素。通常,這是透過使用擦除(myVector.begin()4)指定要擦除的元素的位置來完成的。但是,在某些情況下,您可能希望根據元素的值而不是位置來刪除元素。

為了實現此目的,C 提供了擦除刪除習慣用法,它將 std::remove() 和std::erase() 函數。以下是如何實現它的範例:

#include <algorithm>

int main() {
    vector<int> myVector = {5, 9, 2, 8, 0, 7};

    myVector.erase(std::remove(myVector.begin(), myVector.end(), 8), myVector.end());

    return 0;
}
登入後複製

std::remove() 函數採用三個參數:向量的開始和結束迭代器以及要刪除的值。它透過將具有指定值的所有元素移動到向量的末尾來修改向量,從而有效地將它們從原始位置刪除。

然後 std::erase() 函數從向量中刪除元素範圍。在這個範例中,它刪除了從 std::remove() 傳回的位置到向量末尾的所有元素。

透過利用擦除刪除習慣用法,您可以輕鬆地根據元素的值刪除元素,提高程式碼的效率和可維護性。

以上是如何在 C 中按值擦除向量元素?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板