日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

c++ stl容器vector删除(erase),遍历等基本用法介绍及头文件

發布時間:2025/3/16 c/c++ 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 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)包含頭文件 ?

#include<vector>(2)創建vector對象:?
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),遍历等基本用法介绍及头文件的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。