c++ stl容器vector删除(erase),遍历等基本用法介绍及头文件
生活随笔
收集整理的這篇文章主要介紹了
c++ stl容器vector删除(erase),遍历等基本用法介绍及头文件
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
?Vectors 包含著一系列連續存儲的元素,其行為和數組類似。訪問Vector中的任意元素或從末尾添加元素都可以在常量級時間復雜度內完成,而查找特定值的元素所處的位置或是在Vector中插入元素則是線性時間復雜度。
Vectors 包含著一系列連續存儲的元素,其行為和數組類似。訪問Vector中的任意元素或從末尾添加元素都可以在常量級時間復雜度內完成,而查找特定值的元素所處的位置或是在Vector中插入元素則是線性時間復雜度。
c++ stl容器vector的頭文件為: ?#include <vector>
c++ stl容器vector的成員函數介紹:
Constructors構造函數 Operators對vector進行賦值或比較 vector::assign()對Vector中的元素賦值 vector::at()返回指定位置的元素 vector::back()返回最末一個元素 vector::begin()返回第一個元素的迭代器 vector::capacity()返回vector所能容納的元素數量(在不重新分配內存的情況下) vector::clear()清空所有元素 vector::empty()判斷Vector是否為空(返回true時為空) vector::end()返回最末元素的迭代器(譯注:實指向最末元素的下一個位置) vector::erase()刪除指定元素 vector::front()返回第一個元素 vector::get_allocator()返回vector的內存分配器 vector::insert()插入元素到Vector中 vector::max_size()返回Vector所能容納元素的最大數量(上限) vector::pop_back()移除最后一個元素 vector::push_back()在Vector最后添加一個元素 vector::rbegin()返回Vector尾部的逆迭代器 vector::rend()返回Vector起始的逆迭代器 vector::reserve()設置Vector最小的元素容納數量 vector::resize()改變Vector元素數量的大小 vector::size()返回Vector元素數量的大小 vector::swap()交換兩個Vector
c++ stl容器vector基本操作:
(1)包含頭文件 ?
vector<int> vec;(3)尾部插入數字:
vec.push_back(a);(4)使用下標訪問元素:?
cout<<vec[0]<<endl; //記住下標是從0開始的。(5)使用迭代器遍歷訪問元素.
vector<int>::iterator it; for(it=vec.begin();it!=vec.end();it++)cout<<*it<<endl;(6)插入元素: ? ?
vec.insert(vec.begin()+i,a); //在第i+1個元素前面插入a;(7)刪除元素:
vec.erase(vec.begin()+2); //刪除第3個元素 vec.erase(vec.begin()+i,vec.end()+j); //刪除區間[i,j-1];區間從0開始
(8)向量大小:
vec.size();(9)清空:?
vec.clear();
c++ stl容器vector用法詳細代碼
#include<stdio.h> #include<algorithm> #include<vector> #include<iostream> using namespace std; typedef struct rect {int id;int length;int width;//對于向量元素是結構體的,可在結構體內部定義比較函數,下面按照id,length,width升序排序。bool operator< (const rect &a) const{if(id!=a.id)return id<a.id;else{if(length!=a.length)return length<a.length;elsereturn width<a.width;}} }Rect; int main() {vector<Rect> vec;Rect rect;rect.id=1;rect.length=2;rect.width=3;vec.push_back(rect);vector<Rect>::iterator it=vec.begin();cout<<(*it).id<<' '<<(*it).length<<' '<<(*it).width<<endl; return 0; } 本類別最新文章推薦: linux c malloc函數定義及用法詳解 Linux下C語言strstr()查找子字符串位置函數詳細介紹(strstr原型、實現及用法) tcmalloc內存泄露優化c++開源庫下載,安裝及使用介紹 C++ Iterator迭代器介紹及Iterator迭代器用法代碼舉例 c++ stl容器vector刪除(erase),遍歷等基本用法介紹及頭文件 c++ stl棧容器stack的pop(),push()等用法介紹及頭文件 c++ stl容器set成員函數介紹及set集合插入,遍歷等用法舉例 C++準標準庫boost庫中文介紹 C++ stl隊列Queue用法介紹:刪除,插入等操作代碼舉例 C++ STL庫中priority_queue介紹,成員函數說明及priority_queue具體用法舉例
總結
以上是生活随笔為你收集整理的c++ stl容器vector删除(erase),遍历等基本用法介绍及头文件的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux 查看ERROR日志方法
- 下一篇: discuz! X3 更改域名全程记录