1. 程式人生 > >Vector中的 insert()和 erase()的使用

Vector中的 insert()和 erase()的使用

學習C++中的筆記:

insert(iterator, type_define)表示在iterator所指向的位置插入資料,同時之前在iterator中的資料被推到後面的位置。不是覆蓋。

erase(iterator)表示刪除當前iterator指向的資料,同時後面的資料自動前移。不會出現空的Node。

××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××

#include <iostream>
#include <stdio.h>
#include <string>
#include <vector>
using namespace std;


int main()
{
    vector<string> param0;
    param0.push_back("XYZ366");
    param0.push_back("MAT999");
    param0.push_back("MECT666");


    vector<string>::iterator itePara;


    itePara=param0.begin();
    cout<<*itePara<<endl;


    param0.insert(itePara+1,"NewOne");
    for(itePara=param0.begin();itePara!=param0.end();itePara++)
    {
        cout<<*itePara<<endl;


    }


    cout<<"............................"<<endl;
    param0.erase(param0.begin());
    for(itePara=param0.begin();itePara!=param0.end();itePara++)
    {
        cout<<*itePara<<endl;


    }




    return 0;
}

×××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××

輸出的結果是:

XYZ366:
XYZ366:
NewOne
MAT999:
MECT666:
............................
NewOne
MAT999:
MECT666: