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

c++ vector 常用函數(shù)示例解析

 更新時間:2020年07月21日 14:14:48   作者:賴興宇  
這篇文章主要介紹了c++ vector 常用函數(shù)示例解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

c++ vector 常用函數(shù)

Just like arrays, vectors use contiguous storage locations for their elements, which means that their elements can also be accessed using offsets on regular pointers to its elements, and just as efficiently as in arrays. But unlike arrays, their size can change dynamically, with their storage being handled automatically by the container.

vector也是一個數(shù)組但是它的占用的內(nèi)存大小是動態(tài)變化的。當vector占用的內(nèi)存滿了之后,就要重新分配內(nèi)存,并且賦值原來的所有元素,為了避免頻繁的重新分配內(nèi)存,遷移數(shù)據(jù)。vector實際分配的內(nèi)存比你需要的內(nèi)存多。比如你有10個int的數(shù)據(jù)在vector中,vector實際占用的內(nèi)存是20個int的內(nèi)存, 當你數(shù)據(jù)占用超過實際占用內(nèi)存的比例的時候,vector就會自動重新分配內(nèi)存,遷移數(shù)據(jù). vector實際占用的內(nèi)存可以用capacity()來查看

#include<iostream>
#include<vector>
using namespace std;
int main(){
  vector<int> ans;
  for(int i=0; i<10; i++) ans.push_back(i);
  ans.erase(ans.begin()+2);
  cout<<"擦除第三個數(shù)字:";
  for(int j=0; j<ans.size(); j++) cout<<ans[j]<<" ";
  ans.erase(ans.begin(), ans.begin()+2);
  cout<<endl<<"擦除前2個數(shù)字:";
  for(int k=0; k<ans.size(); k++) cout<<ans[k]<<" ";
  //盡量不要頻繁使用這個函數(shù),會引起大量數(shù)據(jù)移動,降低程序效率
  ans.insert(ans.begin()+1, 100);
  cout<<endl<<"在第一位后面插入100:";
  for(int m=0; m<ans.size(); m++) cout<<ans[m]<<" ";
  //vector在聲明的時候,可以申明大小和默認值
  vector<int> temp(5, -1);
  cout<<endl<<"temp的大小為5,默認值是-1:";
  for(int l=0; l<temp.size(); l++) cout<<temp[l]<<" ";
  //resize(int n)改變vector實際儲存的數(shù)據(jù)個數(shù), 如果n比實際個數(shù)多,則多出的位添加0,否則截取掉多余數(shù)據(jù)
  temp.resize(8);
  cout<<endl<<"把temp的大小改變位8:";
  for(int h=0; h<temp.size(); h++) cout<<temp[h]<<" ";
  //在改變vector大小的同時還能指定多余內(nèi)存的值;這種方式只適用于分配的空間比原來的多的情況
  temp.resize(10, 1111);
  cout<<endl<<"temp的大小改為10,并且指定多出來空間的值位11111:";
  for(int g=0; g<temp.size(); g++)cout<<temp[g]<<" ";
  cout<<endl<<"獲取temp的第一個元素:"<<temp.front()<<endl<<"獲取temp的最后一個元素:"<<temp.back();
  //常用empty()和size函數(shù)來判斷vector是否為空,當vector為空的時候, empty()返回true, size()的值為0
return 0;}

此外可以配合#include<algorithm>庫中的unique函數(shù)來刪除vector中的重復元素

vector<int> ans;
ans.erase(unique(ans.begin(), ans.end()), ans.end());

到此這篇關于c++ vector 常用函數(shù)示例解析的文章就介紹到這了,更多相關c++ vector 常用函數(shù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • C++實現(xiàn)十進制數(shù)轉(zhuǎn)換為二進制數(shù)的數(shù)學算法

    C++實現(xiàn)十進制數(shù)轉(zhuǎn)換為二進制數(shù)的數(shù)學算法

    這篇文章和大家分享一下我個人對十進制數(shù)轉(zhuǎn)換為二進制數(shù)的想法,目前暫時更新只整數(shù)十進制的轉(zhuǎn)換,后續(xù)會更新帶有小數(shù)的進制轉(zhuǎn)換,代碼使用c++實現(xiàn)
    2021-09-09
  • C++中this指針的理解與作用詳解

    C++中this指針的理解與作用詳解

    這篇文章主要給大家介紹了關于C++中this指針的理解與作用的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用C++具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-12-12
  • 使用C語言中的time函數(shù)獲取系統(tǒng)時間

    使用C語言中的time函數(shù)獲取系統(tǒng)時間

    在C語言中可以使用time函數(shù)來獲取系統(tǒng)時間,以下對time函數(shù)進行了介紹,需要的朋友可以過來參考下
    2013-07-07
  • C++實現(xiàn)圖像目標區(qū)裁剪ImageCropping

    C++實現(xiàn)圖像目標區(qū)裁剪ImageCropping

    本文主要介紹了C++實現(xiàn)圖像目標區(qū)裁剪ImageCropping,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-06-06
  • 簡單講解C++的內(nèi)部和外部函數(shù)以及宏的定義

    簡單講解C++的內(nèi)部和外部函數(shù)以及宏的定義

    這篇文章主要介紹了簡單講解C++的內(nèi)部和外部函數(shù)以及宏的定義,是C++入門學習中的基礎知識,需要的朋友可以參考下
    2015-09-09
  • C語言 數(shù)據(jù)結(jié)構(gòu)雙向鏈表簡單實例

    C語言 數(shù)據(jù)結(jié)構(gòu)雙向鏈表簡單實例

    這篇文章主要介紹了C語言 數(shù)據(jù)結(jié)構(gòu)雙向鏈表簡單實例的相關資料,需要的朋友可以參考下
    2017-03-03
  • C語言詳細講解指針數(shù)組的用法

    C語言詳細講解指針數(shù)組的用法

    在C語言和C++等語言中,數(shù)組元素全為指針變量的數(shù)組稱為指針數(shù)組,指針數(shù)組中的元素都必須具有相同的存儲類型、指向相同數(shù)據(jù)類型的指針變量。指針數(shù)組比較適合用來指向若干個字符串,使字符串處理更加方便、靈活
    2022-05-05
  • C++實用庫之字節(jié)流合成器

    C++實用庫之字節(jié)流合成器

    在處理跨平臺的數(shù)據(jù)交換或網(wǎng)絡通信時,字節(jié)流的重要性更加突出,不同的系統(tǒng)可能有不同的字節(jié)序(大端序或小端序),因此在發(fā)送和接收字節(jié)流時,可能需要考慮字節(jié)序的轉(zhuǎn)換,這篇文章主要介紹了C++實用庫之字節(jié)流合成器,需要的朋友可以參考下
    2024-04-04
  • C語言實現(xiàn)階乘的示例詳解

    C語言實現(xiàn)階乘的示例詳解

    在現(xiàn)實中,我們做數(shù)學題總會遇到階乘問題,這在計算機中也不例外。 那我們應該怎么實現(xiàn)呢?下面小編就為大家講解一下C語言中階乘的實現(xiàn)
    2022-07-07
  • C/C++產(chǎn)生指定范圍和不定范圍隨機數(shù)的實例代碼

    C/C++產(chǎn)生指定范圍和不定范圍隨機數(shù)的實例代碼

    C/C++產(chǎn)生隨機數(shù)用到兩個函數(shù)rand() 和 srand(),這里介紹不指定范圍產(chǎn)生隨機數(shù)和指定范圍產(chǎn)生隨機數(shù)的方法代碼大家參考使用
    2013-11-11

最新評論

麻栗坡县| 宜昌市| 平谷区| 土默特左旗| 会同县| 右玉县| 湖口县| 吴忠市| 岳池县| 佛教| 呼图壁县| 盈江县| 镇巴县| 麻阳| 彭山县| 锦屏县| 琼结县| 县级市| 喀喇沁旗| 武邑县| 新源县| 大英县| 枝江市| 福州市| 新泰市| 石林| 通江县| 青田县| 巴林右旗| 贡觉县| 马鞍山市| 阳曲县| 余庆县| 武汉市| 碌曲县| 平阳县| 浪卡子县| 抚宁县| 老河口市| 稻城县| 鸡东县|