青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

C++分析研究  
C++
日歷
<2025年12月>
30123456
78910111213
14151617181920
21222324252627
28293031123
45678910
統計
  • 隨筆 - 92
  • 文章 - 4
  • 評論 - 4
  • 引用 - 0

導航

常用鏈接

留言簿

隨筆檔案

文章檔案

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

 
  此文總結常用vector操作,是前一篇的續作!只有代碼,詳細請看代碼中的注釋。
   [cpp] view plaincopy/*
   * file_name: vector_test.cpp
   *
   * Created on: 2014年6月28日 下午3:34:23
   * Author: The_Third_Wave,
   * Last modified: 2014年6月28日 下午3:34:23
   #include
   #include
   #include "Headers/Myfunc.h"
   #include "Headers/Person.h"
   void output(const std::vector &vec)
   // 因為是輸出而不是修改,定義形參為常量引用,提高可靠性(const)和效率(&)!
   {
   std::cout << "size: " << vec.size()<< ", capacity: " <
   }
   int main()
   {
   std::vector vec = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
   pr_vector(vec);
   // 訪問首位元素,原生方法之vec.front()和vec.back() 使用前一般最好做元素檢查vec.size()
   std::cout << vec.front() << std::ends << vec.back() << std::endl;
   // 通過迭代器【注意:*(--vec.end())】, 使用前一般最好做元素檢查vec.size()
   std::cout << *vec.begin() << std::ends << *(--vec.end()) << std::endl;
   auto a = vec.size(); // 讓編譯器自動分析表達式所屬類型
   auto b = vec.capacity(); // 不重新分配內存的話,vector可以保存多少元素
   std::cout << "size: " << a << std::ends << "capacity: " <
   vec.reserve(50); // 分配至少能容納n個元素的內存空間
   output(vec);
   vec.shrink_to_fit(); // 將capacity()減少為size()相同大小
   output(vec);
   vec.reserve(50); // 分配至少能容納50個元素的內存空間
   // 以下添加元素
   for (decltype(vec.size()) ix = 0; ix != 40; ++ix) // decltype從表達式類型推導出變量類型
   {
   vec.push_back(ix*ix);
   }
   pr_vector(vec);
   output(vec); // s輸出證明沒超過size,vector就不會分配超額的空間
   // 我們不分配空間,看看自動管理
   for (decltype(vec.size()) ix = 0; ix != 40; ++ix) // decltype從表達式類型推導出變量類型
   {
   vec.push_back(ix*ix);
   }
   pr_vector(vec);
   output(vec); // 輸出表示分配了超額的空間,【測試表明:分配的空間為當前的2倍,也就意味著越大越浪費】
   // 以下重新初始化,開始插入操作的學習【并學習及幾種賦值的操作方法】
   std::vector vec2 = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}; // 重新初始化
   pr_vector(vec); pr_vector(vec2);
   std::swap(vec, vec2); // 【快速】交換兩容器的數據 swap(a, b)
   pr_vector(vec); pr_vector(vec2);
   vec2.assign(vec.begin(), vec.end()); // 參數為另外一個同類型vector的迭代器
   pr_vector(vec); pr_vector(vec2);
   vec.assign({0, 0, 0, 0, 0}); // 參數為初始化列表
   pr_vector(vec);
   vec.assign(10, 1); // 替換為10個1
   pr_vector(vec);
   // vector沒有向頭部插入數據的原生方法,只能通過insert()方法來操作,插入位置都為指針指向的前一個位置
   // 具體有4種
   // 第一種vec.insert(p, t); p為自身的迭代器,t為需要插入的值,返回值為指向新添加元素的迭代器
   auto p = vec.insert(vec.begin() + vec.size()/2, 6688);
   // 第二種vec.insert(p, n, t); p為自身的迭代器,插入n個t,返回值為指向新添加的第一個元素的迭代器,如果n為0,則返回p
   vec.insert(p, 3, 4);
   // 第三種vec.insert(p, b, e); p為自身的迭代器,b、e為同類型其他vec對象的迭代器,返回值為指向新添加的第一個元素的迭代器。范圍為空,則返回p
   vec.insert(p, vec2.crbegin(), vec2.crend()); // const 反向迭代器SAT答案
   // 第四種vec.insert(p, il); p為自身的迭代器,il為元素值列表,返回值為指向新添加的第一個元素的迭代器,列表為空,則返回p
   vec.insert(vec.begin(), {9,8,7,6,5,4,3,2,1,0});
   pr_vector(vec);
   // 善用使用insert返回值,可以實現特定位置的反復插入,以上結果已說明托福答案
   // emplace操作, 【c++11】emplace_front【vector沒有】、emplace、emplace_back對應push_front【vector沒有】、insert、push_back
   std::vector per = {{"The_Third_Wave", 100, }}; // 類初始化+vector初始化,所以{{}, {}}必須的
   per.emplace_back("The_Third_Wave", 188, );
   per.emplace(per.begin() + 1, Person("The_Third_Wave", 168, ));
   for (auto &p: per)
   {
   print(std::cout, p);
   }
   // 刪除操作,注意編譯器不檢查元素是否存在,所以坑自己填
   // vec.pop_back(),vector沒有pop_front()
   vec = {0, 1, 2, 3, 4, 5, 6, 7, 8 ,9};
   vec.pop_back();
   pr_vector(vec);
   // vec.erase(p)【刪除迭代器p所指元素,返回值為:被刪元素之后的迭代器。p指向尾部,返回尾后迭代器,如果p是尾后迭代器,那就坑死你了,恭喜!】
   vec.erase(vec.begin() + 8);
   pr_vector(vec);
   // vec.erase(b, e)【刪除迭代器b,e所指范圍元素,返回值為:被刪元素之后的迭代器。如果e是尾后迭代器,返回的還是尾后迭代器,不坑,恭喜!】
   vec.erase(vec.begin() + 3 , vec.end() - 1);
   pr_vector(vec);
   // vec.clear()刪除所有,返回值為void
   vec.clear();
   pr_vector(vec);
   std::cout << "上面有空行就對了!否則就是出錯了。";
   }
   結果為:
 
   [cpp] view plaincopy
   0 1 2 3 4 5 6 7 8 9
   0 9
   0 9
   size: 10 capacity: 10
   size: 10, capacity: 50
   size: 10, capacity: 10
   0 1 2 3 4 5 6 7 8 9 0 1 4 9 16 25 36 49 64 81 100 121 144 169 196 225 256 289 324 361 400 441 484 529 576 625 676 729 784 841 900 961 1024 1089 1156 1225 1296 1369 1444 1521
   size: 50, capacity: 50
   0 1 2 3 4 5 6 7 8 9 0 1 4 9 16 25 36 49 64 81 100 121 144 169 196 225 256 289 324 361 400 441 484 529 576 625 676 729 784 841 900 961 1024 1089 1156 1225 1296 1369 1444 1521 0 1 4 9 16 25 36 49 64 81 100 121 144 169 196 225 256 289 324 361 400 441 484 529 576 625 676 729 784 841 900 961 1024 1089 1156 1225 1296 1369 1444 1521
   size: 90, capacity: 100
   0 1 2 3 4 5 6 7 8 9 0 1 4 9 16 25 36 49 64 81 100 121 144 169 196 225 256 289 324 361 400 441 484 529 576 625 676 729 784 841 900 961 1024 1089 1156 1225 1296 1369 1444 1521 0 1 4 9 16 25 36 49 64 81 100 121 144 169 196 225 256 289 324 361 400 441 484 529 576 625 676 729 784 841 900 961 1024 1089 1156 1225 1296 1369 1444 1521
   0 1 2 3 4 5 6 7 8 9
   0 1 2 3 4 5 6 7 8 9
   0 1 2 3 4 5 6 7 8 9 0 1 4 9 16 25 36 49 64 81 100 121 144 169 196 225 256 289 324 361 400 441 484 529 576 625 676 729 784 841 900 961 1024 1089 1156 1225 1296 1369 1444 1521 0 1 4 9 16 25 36 49 64 81 100 121 144 169 196 225 256 289 324 361 400 441 484 529 576 625 676 729 784 841 900 961 1024 1089 1156 1225 1296 1369 1444 1521
   0 1 2 3 4 5 6 7 8 9
   0 1 2 3 4 5 6 7 8 9
   0 0 0 0 0
   1 1 1 1 1 1 1 1 1 1
   9 8 7 6 5 4 3 2 1 0 1 1 1 1 1 9 8 7 6 5 4 3 2 1 0 4 4 4 6688 1 1 1 1 1
   0 1 2 3 4 5 6 7 8
   0 1 2 3 4 5 6 7
   0 1 2 7
   上面有空行就對了!否則就是出錯了。
posted on 2014-09-20 15:13 HAOSOLA 閱讀(328) 評論(0)  編輯 收藏 引用

只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


 
Copyright © HAOSOLA Powered by: 博客園 模板提供:滬江博客
PK10開獎 PK10開獎
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            午夜亚洲性色视频| 久久先锋资源| 亚洲一区尤物| 国产精品资源在线观看| 欧美一区成人| 久久久999精品免费| 激情综合久久| 欧美成人精品在线观看| 欧美成人69av| 一区二区精品国产| 亚洲一区二区三区在线| 国产午夜精品视频免费不卡69堂| 欧美中文字幕在线视频| 久久久综合激的五月天| 亚洲精品乱码久久久久| 亚洲色图在线视频| 狠狠爱综合网| 亚洲人妖在线| 国产精品一区二区三区四区五区| 久久午夜视频| 欧美视频福利| 美女精品国产| 国产精品久久一级| 美女主播精品视频一二三四| 欧美日韩 国产精品| 久久精品免费| 欧美日韩国产在线| 久久亚洲私人国产精品va媚药| 美女久久一区| 欧美一区二区在线播放| 麻豆精品在线视频| 亚洲自拍16p| 欧美大片一区二区| 欧美在线一区二区三区| 欧美成人三级在线| 久久―日本道色综合久久| 欧美激情综合色| 久久免费视频这里只有精品| 欧美人与性动交cc0o| 久久蜜桃精品| 国产精品毛片| 日韩一区二区电影网| 亚洲高清视频的网址| 亚洲欧美日韩人成在线播放| 亚洲精品国产精品国自产观看| 午夜在线精品| 亚洲欧美日韩人成在线播放| 欧美电影免费观看大全| 久久综合狠狠综合久久激情| 国产精品一二| 亚洲午夜久久久久久尤物| 亚洲精品中文字幕女同| 久久久一本精品99久久精品66| 性欧美超级视频| 欧美午夜精品久久久久久孕妇| 亚洲电影免费观看高清完整版在线| 国产美女精品免费电影| 亚洲视频在线观看一区| 一本久久a久久精品亚洲| 麻豆精品视频在线| 欧美 日韩 国产一区二区在线视频| 国产精品区一区二区三区| 99视频在线观看一区三区| 亚洲精品久久久久久久久| 久热精品在线| 欧美91大片| 亚洲高清一区二| 老司机午夜精品| 美女尤物久久精品| 在线免费观看日韩欧美| 久久久久久999| 欧美成人影音| 亚洲精品视频中文字幕| 欧美韩国在线| 一区二区三区精品久久久| 亚洲免费一区二区| 国产精品丝袜久久久久久app| 亚洲伊人久久综合| 久久精品人人| 亚洲国产精品成人| 欧美久久久久久久久久| 日韩一二三在线视频播| 亚洲免费视频观看| 国产精品一二三| 久久久久国产精品www| 欧美va天堂在线| 在线亚洲精品福利网址导航| 国产精品久久97| 香蕉久久一区二区不卡无毒影院| 久久视频一区| 亚洲精品专区| 国产欧美日韩精品一区| 久久久国产精品一区| 亚洲国产一二三| 亚洲一区美女视频在线观看免费| 国产伦精品一区二区三区免费迷 | 久久尤物电影视频在线观看| 一区二区在线视频播放| 欧美激情一区二区三区在线视频观看 | 国产精品久久久对白| 欧美一级电影久久| 亚洲激情综合| 久久成人国产| 艳妇臀荡乳欲伦亚洲一区| 国产精品亚洲视频| 欧美电影在线观看| 亚洲欧美一区二区三区极速播放| 久久综合五月天婷婷伊人| 夜夜爽www精品| 精品999在线播放| 国产精品久久久久久久久久久久久| 久久久国产精品一区二区三区| 日韩一区二区高清| 欧美不卡一卡二卡免费版| 亚洲欧美在线播放| 亚洲美女91| 在线播放日韩专区| 国产精品天美传媒入口| 欧美激情欧美激情在线五月| 欧美一区二区三区在线观看| 亚洲精品久久久久久久久| 六月丁香综合| 久久超碰97人人做人人爱| 一区二区三区高清在线观看| 在线观看亚洲精品| 国产欧美日韩视频| 国产精品白丝av嫩草影院 | 99精品国产在热久久下载| 欧美xxx成人| 久久九九精品99国产精品| 亚洲免费视频在线观看| 日韩网站在线看片你懂的| 一区二区三区在线视频免费观看| 国产精品久久久久9999| 欧美日韩在线三区| 欧美精品在线一区二区| 美国三级日本三级久久99| 久久精品成人一区二区三区| 亚洲欧美在线网| 亚洲欧美日韩在线一区| 亚洲性夜色噜噜噜7777| 日韩写真在线| 一区二区三区高清不卡| 夜夜嗨av一区二区三区中文字幕 | 欧美极品在线视频| 久久嫩草精品久久久精品| 久久成人精品| 久久久久久久久综合| 久久久一本精品99久久精品66| 久久精品国产久精国产一老狼| 欧美在线免费播放| 久久精品国产精品| 久久亚洲综合色| 欧美成人精品在线播放| 欧美福利电影网| 欧美日韩国产三区| 欧美亚洲成人免费| 国产欧美日韩专区发布| 国产日韩欧美一区二区| 雨宫琴音一区二区在线| 亚洲国产日韩欧美在线图片| 亚洲精品免费一区二区三区| 中文亚洲字幕| 久久精品视频免费观看| 男男成人高潮片免费网站| 亚洲日本aⅴ片在线观看香蕉| 夜夜夜久久久| 欧美亚洲系列| 欧美成人小视频| 国产精品久久久久一区| 国产综合色在线| 日韩视频中午一区| 香蕉成人伊视频在线观看| 久久香蕉国产线看观看网| 亚洲黄色片网站| 亚洲综合国产| 噜噜噜躁狠狠躁狠狠精品视频| 欧美另类人妖| 国产亚洲一本大道中文在线| 亚洲韩国精品一区| 午夜精品国产精品大乳美女| 狂野欧美性猛交xxxx巴西| 亚洲精品一区二区三区在线观看 | 久久久久久久999精品视频| 欧美激情精品久久久久久| 国产精品久久久久久av下载红粉| 国产一区日韩欧美| 一区二区三区视频观看| 久久久久久免费| 亚洲精品在线观看视频| 久久成人免费日本黄色| 欧美日韩一区成人| 在线精品视频免费观看| 亚洲欧美国产三级| 亚洲国产精品一区二区www| 亚洲免费在线视频| 欧美日韩大片一区二区三区| 永久免费毛片在线播放不卡| 午夜精品国产更新| 99re热精品|