精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

C++ vector刪除符合條件元素的編程技巧

電子設計 ? 2018-09-20 10:03 ? 次閱讀

C++ vector中實際刪除元素使用的是容器vecrot中std::vector::erase()方法。

C++ 中std::remove()并不刪除元素,因為容器的size()沒有變化,只是元素的替換。

1.std::vector::erase()

函數原型:iterator erase (iterator position);//刪除指定元素

iterator erase (iterator first, iterator last);//刪除指定范圍內的元素

返回值:指向刪除元素(或范圍)的下一個元素。(An iterator pointing to the new location of the element that followed the last element erased by the function call. This is the container end if the operation erased the last element in the sequence.)

2.代碼實例

#include
#include
#include
using namespace std;
int out(vector &iVec)
{
for(int i=0;i
cout<
cout<
return 0;
}
int main()
{
vector iVec;
vector::iterator it;
int i;
for( i=0;i<10;i++)
iVec.push_back(i);
cout<<"The Num(old):";out(iVec);
for(it=iVec.begin();it!=iVec.end();)
{
if(*it % 3 ==0)
it=iVec.erase(it); //刪除元素,返回值指向已刪除元素的下一個位置
else
++it; //指向下一個位置
}
cout<<"The Num(new):";out(iVec);
return 0;
}
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • C++
    C++
    +關注

    關注

    22

    文章

    2104

    瀏覽量

    73497
  • Vector
    +關注

    關注

    3

    文章

    56

    瀏覽量

    8557
收藏 人收藏

    評論

    相關推薦

    c++vector容器

    1.vector容器介紹 ? ? ? 向量(Vector)是一個封裝了動態大小數組的順序容器(Sequence Container)。跟任意其它類型容器一樣,它能夠存放各種類型的對象。可以簡單的認為
    的頭像 發表于 07-13 19:36 ?1379次閱讀
    <b class='flag-5'>c++</b>之<b class='flag-5'>vector</b>容器

    刪除數組元素

    刪除數組元素作為條件結構的條件輸入端是怎么回事啊。。。
    發表于 03-30 15:51

    vector用法總結(轉載)

    ,并且for中的測試比較ix和0。第一次循環時,由于ix本身就是0,則條件測試失敗,for循環體一次也不執行。關鍵概念:安全的泛型編程C++程序員習慣于優先選用!=而不是
    發表于 05-01 15:22

    matlab矩陣如何索引符合特定條件元素

    matlab 中 如何所以符合特定條件元素,比如 索引大于1的輸出來
    發表于 11-12 10:52

    Visual C++ 6.0 高級編程 -下載

    Visual C++ 6.0 高級編程,免費下載:全面介紹了Visual C++ 6.0的中高級編程技術,其內容主要有:內存管理、高級圖形處理、使用Internet、創建多線程程序、創
    發表于 07-12 15:25 ?0次下載
    Visual <b class='flag-5'>C++</b> 6.0 高級<b class='flag-5'>編程</b> -下載

    編程C C++初學者+FAQ

    編程C C++初學者+FAQ
    發表于 09-06 14:55 ?80次下載

    C++編程思想

    C++編程思想,很好的資料,大家下載看看吧!夠20字了吧,哈哈哈!
    發表于 11-17 11:38 ?0次下載

    Android C++高級編程----使用NDK

    Android C++高級編程----使用NDK
    發表于 03-19 11:23 ?3次下載

    C++vector的定義與初始化

    C++中的vector vector(向量)是一種序列式容器,類似于數組,但比數組更優越。一般來說數組不能動態拓展,因此在程序運行的時候不是浪費內存,就是造成越界。而vector正好彌
    的頭像 發表于 02-02 16:41 ?9025次閱讀
    <b class='flag-5'>C++</b>中<b class='flag-5'>vector</b>的定義與初始化

    C++編程調試秘笈

    C++編程調試秘笈資料下載。
    發表于 06-01 15:35 ?14次下載

    CC++經典著作-C專家編程.PDF

    CC++經典著作-C專家編程.PDF
    發表于 12-13 17:11 ?0次下載

    CC++實物精選《C專家編程

    CC++實物精選《C專家編程
    發表于 01-17 09:55 ?1次下載

    C++學習筆記之順序容器

    C++中的順序容器是一種用于存儲和管理元素序列的數據結構。它們提供了一組有序的元素,并支持在序列的任意位置插入和刪除元素
    的頭像 發表于 05-11 17:05 ?566次閱讀

    動態數組和C++ std::vector詳解

    std::vectorC++的默認動態數組,其與array最大的區別在于vector的數組是動態的,即其大小可以在運行時更改。std::vector是封裝動態數組的順序容器,且該容器
    的頭像 發表于 07-19 11:07 ?946次閱讀

    c++怎么開始編程

    C++是一種高級的、通用的編程語言,用于開發各種類型的應用程序。它是從C語言演變而來,也是一種靜態類型語言,可以在不同的平臺上進行開發。C++具有高度的靈活性和性能,并且廣泛應用于游戲
    的頭像 發表于 11-27 15:56 ?895次閱讀