【c++】容器的基本操作

操作\容器vectorliststringsetstackqueuemap
插入push_bcak()、insert()push_back() 、push_front()、insert()append(string)、push_back(char)、insert(string)insert()push()push()insert(pair<int,int>(5,1) )
删除pop_back()、erase()pop_back()、pop_front()、erase()erase(string)、pop_back(char)erase()pop()pop()erase()
取值front()、back() front()、back()at(int)、find(" or " ")

find()

top()back()、front()find()
判空empty()empty()empty()empty()empty()empty()empty()
大小size()size()size()size()size()size()size()
其他resize(n,val) 容器变为为n个valresize(n,val)、reverse()substr(pos,len)、replace([,) )    

insert

C++容器的insert()函数有以下三种用法: 最终*it=val;
//用法1:在指定位置it前“插入”值为val的元素,返回指向这个元素的迭代器,
iterator insert( iterator it, const TYPE &val ); 
 
//用法2:在指定位置it前“插入”num个值为val的元素 
void insert( iterator it, size_type num, const TYPE &val ); 
 
//用法3:在指定位置it前“插入”区间[start, end)的所有元素. 
void insert( iterator it, input_iterator start, input_iterator end)

 

erase

(1)erase(pos,n); 删除从pos开始的n个字符,比如erase(0,1)就是删除第一个字符

(2)erase(position);删除position处的一个字符(position是个迭代器)

(3)erase(first,last);删除从first到last之间的字符(first和last都是迭代器)
 

string类 insert

  1. string str = "meihao";

    string sstr = str.insert(0,2,'a');

    cout<<sstr<<endl;   //aameihao

  2. string str = "meihao";

    string sstr = str.insert(1,"hello~");

    cout<<sstr<<endl;   //mhello~eihao

  3. string str = "meihao";

    string sstr = str.insert(1,"hello~",3);

    cout<<sstr<<endl;  //mheleihao

substr

substr(pos, length) 

 返回一个string,包含s中从pos开始的n个字符的拷贝(pos的默认值是0,n的默认值是s.size() - pos,即不加参数会默认拷贝整个s)

replace

replace(size_t pos,size_t len,const &str)被替换位置(pos往后len个字符)

 

posted @ 2022-03-14 18:16  青城墨白  阅读(138)  评论(0编辑  收藏  举报