欧美大屁股bbbbxxxx,狼人大香伊蕉国产www亚洲,男ji大巴进入女人的视频小说,男人把ji大巴放进女人免费视频,免费情侣作爱视频

歡迎來(lái)到入門(mén)教程網(wǎng)!

C語(yǔ)言

當(dāng)前位置:主頁(yè) > 軟件編程 > C語(yǔ)言 >

vector與map的erase()函數(shù)詳細(xì)解析

來(lái)源:本站原創(chuàng)|時(shí)間:2020-01-10|欄目:C語(yǔ)言|點(diǎn)擊: 次

vector循環(huán)刪除的時(shí)候,erase(it)會(huì)返回下一個(gè)迭代器的地址,保險(xiǎn)的做法是賦值給it 即 it= erase(it)

這是vector的內(nèi)部機(jī)制所造成的,所以對(duì)vector進(jìn)行erase的時(shí)候特別注意迭代器是否會(huì)失效!

map則可以直接erase(it++);

vector和map都不能將it++寫(xiě)在for循環(huán)中,而在循環(huán)體內(nèi)erase(it)!

復(fù)制代碼 代碼如下:

void main()
{
    vector<int> v;
    v.push_back(1);
    v.push_back(2);
    v.push_back(4);
    v.push_back(3);
    v.push_back(6);
    v.push_back(5);
    cout << v.size() <<endl;
    vector<int>::iterator it;
    for(it = v.begin();it != v.end();)
    {  
        if(*it % 2 == 0)
            //v.erase(it++);
            //it = v.erase(it);
             v.erase(it);
        else
            it++;
    }  
    cout << v.size() <<endl;
    for(it = v.begin();it != v.end();it++)
    {  
        cout << *it << " ";
    }  

    // map的完美刪除
    map<int, int> m;
    m[1] = 1;
    m[2] = 2;
    m[3] = 4;
    m[4] = 3;
    m[5] = 5;
    m[6] = 6;
    cout <<"m size = "<<m.size() <<endl;
    map<int, int>::iterator it1;
    for(it1 = m.begin(); it1!=m.end();)
    {  
        if(it1->second % 2 == 0)
            m.erase(it1++);
        else
            it1++;
    }  
    cout <<"2的整數(shù)倍刪除后應(yīng)該剩下i3";
    cout <<"m size = "<<m.size() <<endl;

}

上一篇:c/c++語(yǔ)言位域注意事項(xiàng)分析

欄    目:C語(yǔ)言

下一篇:大家注意vector, list, set, map成員函數(shù)erase

本文標(biāo)題:vector與map的erase()函數(shù)詳細(xì)解析

本文地址:http://mengdiqiu.com.cn/a1/Cyuyan/4088.html

網(wǎng)頁(yè)制作CMS教程網(wǎng)絡(luò)編程軟件編程腳本語(yǔ)言數(shù)據(jù)庫(kù)服務(wù)器

如果侵犯了您的權(quán)利,請(qǐng)與我們聯(lián)系,我們將在24小時(shí)內(nèi)進(jìn)行處理、任何非本站因素導(dǎo)致的法律后果,本站均不負(fù)任何責(zé)任。

聯(lián)系QQ:835971066 | 郵箱:835971066#qq.com(#換成@)

Copyright © 2002-2020 腳本教程網(wǎng) 版權(quán)所有