国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - C/C++ - C++泛型算法的一些總結

C++泛型算法的一些總結

2020-12-23 14:50C++教程網 C/C++

以下是對C++中的泛型算法進行了總結介紹。需要的朋友可以過來參考下

泛型算法的一些總結
1、每個泛型算法的實現都獨立于單獨的容器,并且不依賴于容器存儲的元素類型。

2、泛型算法從不直接添加或刪除元素。

3、與容器的類型無關,只在一點上隱式地依賴元素類型:必須能夠對元素做比較運算。

A、需要某種遍歷集合的方式:能夠從一個元素向前移到下一個元素。

B、必須能夠知道是否到達了集合的末尾。

C、必須能夠對容器中的每一個元素與被查找的元素進行比較。

D、需要一個類型來指示元素在容器中的位置,或者表示找不到該元素。

4、迭代器將算法和容器綁定起來。算法基于迭代器及其操作實現,而并非基于容器操作。

5、使用泛型算法必須包含algorithm頭文件

6、通常泛型算法都是在標記容器(或其他序列)內的元素范圍的迭代器上操作的,標記范圍的兩個實參類型必須精確匹配,而迭代器本身必須標記一個范圍,第一個迭代器通過不斷地處境,必須可以到到達第二個迭代器。

7、String標準庫為string對象與char *對象定義了相等(==)操作符。

8、謂詞(函數):是做某些檢測的函數,返回用于條件判斷的類型,指出條件是否成立。函數名可用于函數形參。

9、unique 的使用:該算法刪除相鄰的重復元素,然后重新排列輸入范圍內的元素,并且返回一個迭代器,表示無重復的值范圍的結束。unique實際上并沒有刪除任何元素,而是將無重復的元素復制到序列的前端,返回的迭代器指向超出無重復無素范圍末端的下一位置。注:由于該算法刪除相鄰的重復元素,所以在調用此函數之前,要調用sort函數進行排序。

10、關聯容器的鍵是const對象,因此關聯容器的迭代器視為支持自減遠處的輸入迭代器,而不是完整的雙向迭代器。

11、泛型算法的結構:

A、通常有一對迭代器標記輸入范圍。

B、_if 版本的帶有一個謂詞函數開參,謂詞函數用于表示所提供操作的要求,例如排序的規則。

C、_copy 版本多了一個綁定到容器元素類型相同(或可轉換)的另一個容器,把一個容器的元素復制到綁定的容器中,并實現算法的操作,但對輸入迭代器所標記的容器沒有影響。

12、關于list 容器的特有算法。

list 容器上的迭代器是雙向的,而不是隨機訪問類型。由于list 容器不支持隨機訪問,因此,在此窗口上不能使用使用需要隨機訪問迭代器的算法sort , 而merge, remove, reverse, unique 等性能也非常低。對于list 對象,應該優先使用list 容器特有的成員版本,而不是泛型算法。

list 特有的算法與其泛型算法版本之間有兩個到頭重要的差別,list容器特有的操作能添加和刪除元素。

A、remove和 unique 的list版本修改了其關聯的基礎容器,真正地刪除了指定的元素。

B、list容器提供的merge和splice運算會破壞它們的實參。使用merge 的泛型算法版本時,合并的序列將寫入目標迭代器指向的對象,而它的兩個輸入序列保持不變。但是,使用list容器的merge成員函數時,則會破壞它的實參list對象,當實參對象的元素合并到調用merge函數的list對象時,實參對象的元素被移出并刪除。

延伸 · 閱讀

精彩推薦
  • C/C++詳解c語言中的 strcpy和strncpy字符串函數使用

    詳解c語言中的 strcpy和strncpy字符串函數使用

    strcpy 和strcnpy函數是字符串復制函數。接下來通過本文給大家介紹c語言中的strcpy和strncpy字符串函數使用,感興趣的朋友跟隨小編要求看看吧...

    spring-go5642021-07-02
  • C/C++C語言中炫酷的文件操作實例詳解

    C語言中炫酷的文件操作實例詳解

    內存中的數據都是暫時的,當程序結束時,它們都將丟失,為了永久性的保存大量的數據,C語言提供了對文件的操作,這篇文章主要給大家介紹了關于C語言中文件...

    針眼_6702022-01-24
  • C/C++學習C++編程的必備軟件

    學習C++編程的必備軟件

    本文給大家分享的是作者在學習使用C++進行編程的時候所用到的一些常用的軟件,這里推薦給大家...

    謝恩銘10102021-05-08
  • C/C++C++之重載 重定義與重寫用法詳解

    C++之重載 重定義與重寫用法詳解

    這篇文章主要介紹了C++之重載 重定義與重寫用法詳解,本篇文章通過簡要的案例,講解了該項技術的了解與使用,以下就是詳細內容,需要的朋友可以參考下...

    青山的青6062022-01-04
  • C/C++c++ 單線程實現同時監聽多個端口

    c++ 單線程實現同時監聽多個端口

    這篇文章主要介紹了c++ 單線程實現同時監聽多個端口的方法,幫助大家更好的理解和學習使用c++,感興趣的朋友可以了解下...

    源之緣11542021-10-27
  • C/C++C/C++經典實例之模擬計算器示例代碼

    C/C++經典實例之模擬計算器示例代碼

    最近在看到的一個需求,本以為比較簡單,但花了不少時間,所以下面這篇文章主要給大家介紹了關于C/C++經典實例之模擬計算器的相關資料,文中通過示...

    jia150610152021-06-07
  • C/C++深入理解goto語句的替代實現方式分析

    深入理解goto語句的替代實現方式分析

    本篇文章是對goto語句的替代實現方式進行了詳細的分析介紹,需要的朋友參考下...

    C語言教程網7342020-12-03
  • C/C++C語言實現電腦關機程序

    C語言實現電腦關機程序

    這篇文章主要為大家詳細介紹了C語言實現電腦關機程序,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下...

    xiaocaidayong8482021-08-20
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 亚洲一区二区三区四区五区中文 | 欧美麻豆 | 日韩av一区二区在线观看 | 国产一区二区在线看 | 国产精品一区二区视频 | 91国内外精品自在线播放 | 欧美日韩国产一区二区三区不卡 | 蜜桃一区 | 久久久亚洲精品视频 | 99青草| 国产欧美日韩综合精品一区二区 | 日韩欧美一区二区免费 | 国产福利91精品一区二区三区 | 天堂精品一区二区三区 | 91久久精品国产91久久 | 日韩中文视频 | 精品第一页 | 黄色三级免费网站 | 黄色网页在线 | 欧美大片在线观看 | 精品一区二区久久 | 亚洲在线一区二区三区 | 国产一级特黄 | 国产黄色电影 | 99久久亚洲一区二区三区青草 | 五月婷婷导航 | 久久久在线 | 超碰天天 | 国产精品久久久久久久久晋中 | 亚洲欧美日韩在线一区二区三区 | 三级视频在线 | 国产99在线 | 亚洲 | 精品国产仑片一区二区三区 | 亚洲一区在线免费观看 | 久久久久久久久久久免费av | 91中文字幕在线 | 精品久久久久久久久久久下田 | 免费的污网站 | 精品国产91亚洲一区二区三区www | 午夜激情影院 | 天天玩天天操天天射 |