C++ list 的使用
生活随笔
收集整理的這篇文章主要介紹了
C++ list 的使用
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
list 簡介
c++ 中list 是 雙向鏈表容器,不支持隨機訪問,不過list 的插入和刪除動作很快,
list 也是屬于RTL標注模板庫里面的所以使用的需要先引入#include?<list>
list 初始化的方法
#include <iostream>
#include <string>
using namespace std;
#include <list>int main()
{// 創建一個空的listlist<int> a;cout << a.size() << endl;// 創建一個10個元素對象list<int> b(10);// 創建5個元素且5個元素都為明天cout << b.size() << endl;list<string> c(5, "明天");list<string>::iterator it;for (it = c.begin(); it != c.end(); it++){cout << *it << endl;}return 0;
}
list方法說明
| 函數 | 說明 |
| assign(first,last) | 用迭代器first和last所在元素替換list元素 |
| assign(num,val) | 用val的num個副本替換list元素 |
| begin | list中第一個元素的引用 |
| back | list中最后一個元素的引用 |
| size | 返回list的個數 |
| front | 獲取list中第一個元素 |
| end | 獲取list中最后一個元素 |
| empty | 判斷list是否為空,為空返回true |
| clear | 清空list元素 |
| pop_back | 刪除list中最后一個元素 |
| pop_front | 刪除list中第一個元素 |
| rbegin | 返回一個反向迭代器,指向list末尾元素之后 |
| rend | 返回一個反向迭代器,指向list起始元素 |
| erase(i) | 刪除第i位置的元素(注意不能直接為數組,需要用begin或者end) |
| erase(start,end) | 刪除指定的元素返回,注意是前包含后不包含,里面不能是數字 |
| insert(i,x) | 把 i 插入到x位置 |
| insert(i,x,y) | 把 i 插入到x到y 的位置 |
| swap | 與另一個vector交換數據 |
?demo 練習
#include <iostream>
#include <string>
using namespace std;
#include <list>int main()
{// 聲明一個int 類型listlist<string> list_name;// 獲取默認list的sizecout << list_name.size() << endl;//在末尾位置添加元素list_name.push_back("趙");list_name.push_back("錢");list_name.push_back("孫");list_name.push_back("李");// 獲取list的sizecout << list_name.size() << endl;// 開始的位置插入元素list_name.insert(list_name.begin(), "百家姓:");// 結束的位置插入元素list_name.insert(list_name.end(), "ok");// 刪除第一個元素list_name.pop_front();// 刪除最后一個元素list_name.pop_back();//使用迭代器遍歷元素list<string>::iterator it;for (it = list_name.begin(); it != list_name.end(); it++){cout << *it << endl;}// 獲取list第一個元素cout << "第一個元素:" << list_name.front() << endl;// 獲取list最后一個元素cout << "最后一個元素:" << list_name.back() << endl;// list判空if (list_name.empty()){cout << "list為空" << endl;}else{cout << "list不為空" << endl;}// 清空listlist_name.clear();return 0;
}
總結
以上是生活随笔為你收集整理的C++ list 的使用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 绿松石佛珠手链怎么辨别真假呢?
- 下一篇: C++ set 的使用