vector的基本使用

2021-10-23 07:45:45 字數 2551 閱讀 5734

1.vector是表示可變大小的陣列容器;

2.與陣列的不同是,vector的大小是可以動態改變的,大小會被容器自動處理;3

3.vector插入新資料時需要增容,vector會分配乙個新的陣列,然後將資料全部拷過來;

vector //無參構造

vector(size_type n,const value_type& val = value type()) //構造並初始化n個val;

vector (const vector & x); //拷貝構造

vector(inputlterator first,inputlterator last) //使用迭代器進行初始化構造

手撕**

using namespace std;

vectorv1(1);

vectorv2(1, 2);

vectorv3(v2.begin(), v2.end());

vectorv4(v3);

begin+end //分別獲取第乙個資料的位置和最後乙個位置的下乙個位置

rbegin+rend //分別獲取最後乙個資料位置和第乙個資料前乙個位置

注意事項1.使用迭代器時需展開vector::const_iterator定義變數進行賦值,迭代器不僅僅可以遍歷,還可以用於修改物件的值。

size //獲取資料的個數;

capacity //獲取資料的容量;

empty //判空

resize //改變vector的size;

reserve //改變vector放入的capacity;

注意事項.1.vector的capacity是根據編譯器決定的,增容的方式並不確定,不同編譯器下的情況不同。

2.resize在開空間的同時還會初始化,影響size。

push_back //尾插

pop_back // 尾刪

find //查詢

insert //在position位置之前插入資料

erase //刪除position位置的資料

swap //交換倆個vector的資料空間

operator //在vector的過載,利用下標訪問資料

注意事項:find如果找到該元素,會返回該元素所在位置,如果不在,則返回end()位置

1.operator

2.迭代器

3.範圍for

注意:1.迭代器可能會失效,如erase,insert,resize,reserve,assgin,push_back等pos會被移位或刪除,造成野指標問題,系統會崩潰。

2.範圍for底層是迭代器實現。

vector的基本使用

vector是stl最常見的容器,它是一種順序容器,可以隨機訪問。vector是一塊連續分配的記憶體,與陣列較為相似。不同之處在於陣列是靜態分配記憶體,確定大小之後不能改變 vector是動態分配記憶體,可根據自身元素的不斷增多而進行的增容。要使用vector,必須新增標頭檔案,而且如果沒有命名空間...

容器 Vector 的基本使用

v.push back value 代表向容器插入這種型別的資料 v.begin 指向容器的第乙個資料 v.end 指向容器的最後乙個資料的後乙個資料 include include include include using namespace std void myout int value i...

vector的基本用法

vector是c 標準模板庫中的部分內容,它是乙個多功能的,能夠操作多種資料結構和演算法的模板類和函式庫。vector之所以被認為是乙個容器,是因為它能夠像容器一樣存放各種型別的物件,簡單地說,vector是乙個能夠存放任意型別的動態陣列,能夠增加和壓縮資料。標頭檔案 include 宣告 乙個in...