最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C++vector的用法你都知道嘛

 更新時(shí)間:2022年02月18日 11:51:49   作者:菜雞圣龍進(jìn)化菜松鼠  
這篇文章主要為大家詳細(xì)介紹了C++中vector的用法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助

C++vector 用法整理

1.頭文件

#include<iostream>//容器
#include<vector> //算法
#include<iterator>//迭代器

一個(gè)代碼示例

#include<iostream>//容器
#include<vector> //算法
#include<iterator>//迭代器
using namespace std;
int main(int argc, const char* argv[])
{
    const int SIZE = 6;
    int array[SIZE] = {1,2,3,4,5,6};
    vector<int> v(array,array+SIZE);
    cout<<"First element:"<<v.front()<<"\n Last element"<<v.back()<<endl;
   
}

2.vector初始化

定義十個(gè)整形元素的向量(其中初值不確定)

vector<int> a(10);

每個(gè)元素初值為1;

vector<int> a(10,1);

類似于深拷貝的整體賦值方式

vector<char> a(b);

vector<char> a(b.begin(),b.begin+3);//(a的值為0~2個(gè)元素)

用數(shù)組賦初值(和上面一個(gè)有點(diǎn)相似)

vector<int> a(b, b+7);

3.vector對象的重要操作

1.賦值(assign)

a.assign(b.begin(),b.begin()+3); //注意!此處,將b 0~2個(gè)元素構(gòu)成的向量賦值給a!與上面不同!

a.assign(4,2);//  與vector<int> a(10,1);結(jié)果相同

2.返回元素值

//返回最后一個(gè)元素
a.back();
//返回第一個(gè)元素
a.front();
//數(shù)組返回式
 a[i];

3.清空、判斷是否為空

a.clear();

a.empty();

4.刪除

//刪除最后一個(gè)元素
a.pop_back();
//刪除一塊元素
a.erase(a.begin(),a.begin()+3);

5.插入

//在最后一個(gè)向量后插入一個(gè)元素
a.push_back(5);
// 插入一段元素(從第一個(gè)元素算起,插入3個(gè)數(shù),值都為5)
a.insert(a.begin(), 3, 5);
//用數(shù)組插入一段元素(在a的第一個(gè)元素的位置插入b的第3個(gè)元素到第5個(gè)元素)
a.insert(a.begin(), b+1,b+6);


//從現(xiàn)有向量中選擇元素向向量中添加
int a[6] = {1, 2, 3, 4, 5, 6};
vector<int> b;
wector<int> c(a, a+4);
for(vector<int>::iterator it = c.begin(); it<c.end():it++)
{
    b.push_back(*it);
}


//從文件讀取元素向向量中添加
ifstream in("data.txt");
vector<int> a;
for(int i;in>>i)
{
    a.push_back(i);
}

6.返回vector的現(xiàn)存元素個(gè)數(shù)、共可容納個(gè)數(shù)

a.size();

a.c apacity();

7.調(diào)整元素個(gè)數(shù)(這個(gè)好牛)

//將元素個(gè)數(shù)調(diào)整至10,多刪少補(bǔ),補(bǔ)的值隨機(jī)
a.resize(10);
//將元素個(gè)數(shù)調(diào)整至10,多刪少補(bǔ),補(bǔ)的值為2
a.resize(10,2);
//大容量擴(kuò)充(不補(bǔ)充值)
a.reserve(100);

8.整體性交換

a.swap(b);

9.向量的比較操作

a==b;
//還有 !=  >=  <=  >  <

10.重要算法

//從小到大排列
sort(a.begin(), a.end());
//倒置但不排列
 reverse(a.begin(),a.end());
//元素復(fù)制
copy(a.begin(),a.end(),b.begin());
//從某一區(qū)塊中查找元素值,返回位置
find(a.begin(),a.end(),10);

4.一些誤區(qū)

下標(biāo)只能獲取已存在的元素,不能進(jìn)行賦值操作

//錯誤示例
vector<int> a;
for(int i = 0;i<10;i++)
    a[i] = i;

總結(jié)

本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!      

相關(guān)文章

  • STL容器之list源碼詳細(xì)解讀

    STL容器之list源碼詳細(xì)解讀

    這篇文章主要介紹了STL容器之list源碼詳細(xì)解讀,相對于vector的連續(xù)線性空間,list就顯得更加復(fù)雜,它每插入或者刪除一個(gè)元素,就配置或釋放一個(gè)元素空間,需要的朋友可以參考下
    2024-01-01
  • C/C++使用過程中的溢出問題詳解

    C/C++使用過程中的溢出問題詳解

    在C/C++程序里有一類非常典型的問題,那就是:溢出問題,現(xiàn)在分別來分析一下常見的數(shù)組溢出,整數(shù)溢出,緩沖區(qū)溢出,棧溢出和指針溢出等,需要的朋友可以參考下
    2024-01-01
  • C語言中判斷兩個(gè)IPv4地址是否屬于同一個(gè)子網(wǎng)的代碼

    C語言中判斷兩個(gè)IPv4地址是否屬于同一個(gè)子網(wǎng)的代碼

    這篇文章主要介紹了C語言中判斷兩個(gè)IPv4地址是否屬于同一個(gè)子網(wǎng)的代碼,需要的朋友可以參考下
    2017-09-09
  • C++實(shí)現(xiàn)LeetCode(115.不同的子序列)

    C++實(shí)現(xiàn)LeetCode(115.不同的子序列)

    這篇文章主要介紹了C++實(shí)現(xiàn)LeetCode(115.不同的子序列),本篇文章通過簡要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-07-07
  • C語言與java語言中關(guān)于二維數(shù)組的區(qū)別

    C語言與java語言中關(guān)于二維數(shù)組的區(qū)別

    這篇文章主要介紹了C語言與java語言中關(guān)于二維數(shù)組的區(qū)別,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • 一文詳解C語言操作符

    一文詳解C語言操作符

    這篇文章主要詳細(xì)介紹了C語言的操作符,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-05-05
  • VC++中圖像處理類CBitmap的用法

    VC++中圖像處理類CBitmap的用法

    使用VC進(jìn)行圖像處理的時(shí)候,CBitmap類為我們提供了豐富的位圖處理函數(shù),本文總結(jié)了該類的相關(guān)函數(shù)和常用使用方法,包括加載位圖,顯示位圖,析構(gòu)CBitmap資源以及在內(nèi)存中保存位圖等內(nèi)容。
    2015-11-11
  • FFmpeg中avfilter模塊的介紹與使用

    FFmpeg中avfilter模塊的介紹與使用

    FFmpeg中的libavfilter模塊(或庫)用于filter(過濾器),?filter可以有多個(gè)輸入和多個(gè)輸出,下面就跟隨小編一起簡單學(xué)習(xí)一下它的巨日使用吧
    2023-08-08
  • C++跳轉(zhuǎn)語句之Goto對變量定義的影響詳解

    C++跳轉(zhuǎn)語句之Goto對變量定義的影響詳解

    goto語句也被稱為無條件轉(zhuǎn)移語句,這篇文章主要介紹了C++跳轉(zhuǎn)語句之Goto對變量定義的影響,文中通過示例代碼解文字介紹的很詳細(xì),相信對大家的理解和學(xué)習(xí)具有一定的參考借鑒價(jià)值,有需要的朋友們下面跟著小編一起來學(xué)習(xí)學(xué)習(xí)吧。
    2016-11-11
  • 用C語言實(shí)現(xiàn)通訊錄

    用C語言實(shí)現(xiàn)通訊錄

    這篇文章主要為大家詳細(xì)介紹了用C語言實(shí)現(xiàn)通訊錄,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-06-06

最新評論

梧州市| 锡林浩特市| 壤塘县| 南漳县| 陈巴尔虎旗| 兰考县| 萨迦县| 长沙县| 吴堡县| 肇庆市| 青州市| 宁蒗| 宁蒗| 曲阜市| 岗巴县| 邢台市| 南乐县| 蒙阴县| 白银市| 广元市| 元谋县| 文山县| 拉萨市| 太保市| 泰宁县| 江油市| 云安县| 河北省| 武安市| 同仁县| 静宁县| 潞西市| 平塘县| 冕宁县| 唐河县| 广东省| 清原| 泗水县| 滕州市| 新民市| 任丘市|