c 中在順序容器中訪問 插入 刪除元素的操作

2021-07-25 07:18:26 字數 1236 閱讀 7330

c++中的順序容器有vector,deque,queue,list,stack,priority_queue等

訪問順序容器內元素的操作:

c.back( ) 返回容器c的最後乙個元素的引用。如果c為空,操作未定義。

c.front( )返回容器c的第乙個元素的引用。如果c為空,操作未定義。

c[n]返回下標為n的元素的引用    如果n<0或n>=c.size(),該操作未定義        該操作只適用於vector和deque容器

c.at(n)返回下標為n的元素的引用,如果下標越界,則該操作為定義。     該操作只適用於vector和deque容器

在順序容器內新增元素的操作

c.push_back(t)                   在容器c的尾部新增值為t的元素。返回void型別

c.push_front(t)                    在容器c的前端新增值為t的元素。返回void型別

只適用於list和deque容器型別

c.insert(p, t)      在迭代器p所指向的元素前面插入值為t的新元素。返回指向新新增元素的迭代器

c.insert(p,n,t)                      在迭代器p所指向的元素前面插入n個值為t的新元素,返回void型別

c.insert(p, b, e)                   在迭代器p所指向的元素前面插入有迭代器b和e標記的範圍內的元素。返回void型別

在順序容器內刪除元素的操作

c.pop_back()                   刪除容器c的最後元素。返回void型別。如果c為空容器,則該函式未定義

c.push_front()                  刪除容器c的第乙個元素。返回void型別,如果c為空容器,則該函式未定義,只適用於list和deque容器型別

c.erase(p)    刪除迭代器p所指向的元素。返回乙個迭代器,它指向被刪除元素後面的元素。如果p指向容器內的最後乙個元素,則返回的迭代器指向容器的超出末端的下一位置。如果p本身就是指向超出末端的下乙個位置的迭代器,則該函式未定義。

c.erase(b, e)                      刪除迭代器b和e所標記範圍內的元素。返回乙個迭代器,它指向被刪除元素段後面的元素。如果e本身就是指向超出末端的下一位置,則返回的迭代器也指向超出末端的下乙個位置。

c.clear()                   刪除容器內所有的元素。返回void型別

原文:

C 中的map容器的刪除 插入 遍歷

include include include include using namespace std struct display intmain else 使用迭代器完成遍歷 for iter scores.begin iter scores.end iter 把scores值小於90的鍵值對刪...

關於C 中的順序容器

本文參考了 1 順序容器包括 vector,list,deque 2 接受容器大小做形參的建構函式只適用於順序容器,而關聯容器不支援這種初始化。3 作為容器元素型別必須滿足以下兩個約束 一 元素型別必須支援賦值運算。二 元素型別的物件必須可以複製。上面的兩條是最低限度的元素型別約束。除了引用型別外,...

在forward list中插入或刪除元素

list.before begin 返回指向鍊錶首元素之前的不存在的元素的迭代器 list.cbefore begin 同上,但返回的是乙個const iterator list.insert after p,t 在迭代器p之後的位置插入元素。emplace after p,args 使用args在...