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

淺析iterator與指針的區(qū)別

 更新時(shí)間:2013年10月09日 09:41:33   作者:  
指針和iterator都支持減法運(yùn)算,指針-指針得到的是兩個(gè)指針之間的距離,迭代器-迭代器得到的是兩個(gè)迭代器之間的距離

1.指針和iterator都支持與整數(shù)進(jìn)行+,-運(yùn)算,而且其含義都是從當(dāng)前位置向前或者向后移動(dòng)n個(gè)位置

2.指針和iterator都支持減法運(yùn)算,指針-指針得到的是兩個(gè)指針之間的距離,迭代器-迭代器得到的是兩個(gè)迭代器之間的距離

3.通過指針或者iterator都能夠修改其指向的元素

通過上面這幾點(diǎn)看,兩者真的很像,但是兩者也有著下面的幾個(gè)不同地方

1.cout操作符可以直接輸出指針的值,但是對(duì)迭代器進(jìn)行在操作的時(shí)候會(huì)報(bào)錯(cuò)。通過看報(bào)錯(cuò)信息和頭文件知道,迭代器返回的是對(duì)象引用而不是對(duì)象的值,所以cout只能輸出迭代器使用*取值后的值而不能直接輸出其自身。

2.指針能指向函數(shù)而迭代器不行,迭代器只能指向容器

這就說明了迭代器和指針其實(shí)是完全不一樣的概念來(lái)的。指針是一種特殊的變量,它專門用來(lái)存放另一變量的地址,而迭代器只是參考了指針的特性進(jìn)行設(shè)計(jì)的一種STL接口。

筆者曾在網(wǎng)上看到這樣一種說法:迭代器是廣義指針,而指針滿足所有迭代器要求。迭代器是STL算法的接口,而指針是迭代器,因此STL算法可以使用指針來(lái)對(duì)基于指針的非STL容器進(jìn)行操作。

筆者覺得上面說法也有幾分道理,但是到底正不正確就留給看官自己判斷了。但是有一點(diǎn)希望大家注意的是:千萬(wàn)不要把指針和迭代器搞混了。也許某些編譯器使用指針來(lái)實(shí)現(xiàn)迭代器以至于有些人會(huì)誤以為指針和迭代器是一個(gè)概念來(lái)的。

相關(guān)文章

  • C++的內(nèi)聯(lián)函數(shù)你了解嗎

    C++的內(nèi)聯(lián)函數(shù)你了解嗎

    這篇文章主要為大家詳細(xì)介紹了C++的內(nèi)聯(lián)函數(shù),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助
    2022-03-03
  • C語(yǔ)言實(shí)現(xiàn)日期和時(shí)間處理的常用函數(shù)總結(jié)

    C語(yǔ)言實(shí)現(xiàn)日期和時(shí)間處理的常用函數(shù)總結(jié)

    在C語(yǔ)言中,時(shí)間和日期處理是一項(xiàng)非?;A(chǔ)的技能,也是開發(fā)實(shí)際應(yīng)用程序時(shí)經(jīng)常會(huì)用到的功能,本文為大家總結(jié)了C語(yǔ)言中一些常用的時(shí)間庫(kù)函數(shù),希望對(duì)大家有所幫助
    2023-06-06
  • C/C++中宏定義(#define)

    C/C++中宏定義(#define)

    #define命令是C語(yǔ)言中的一個(gè)宏定義命令,它用來(lái)將一個(gè)標(biāo)識(shí)符定義為一個(gè)字符串,該標(biāo)識(shí)符被稱為宏名,被定義的字符串稱為替換文本。接下拉通過本文給大家分享C/C++中宏定義(#define)知識(shí),需要的朋友參考下
    2017-02-02
  • C語(yǔ)言單鏈表貪吃蛇小游戲

    C語(yǔ)言單鏈表貪吃蛇小游戲

    這篇文章主要為大家詳細(xì)介紹了C語(yǔ)言單鏈表貪吃蛇小游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-02-02
  • C語(yǔ)言實(shí)現(xiàn)BMP圖像處理(直方圖均衡化)

    C語(yǔ)言實(shí)現(xiàn)BMP圖像處理(直方圖均衡化)

    這篇文章主要為大家詳細(xì)介紹了C語(yǔ)言實(shí)現(xiàn)BMP圖像直方圖均衡化處理,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-10-10
  • C語(yǔ)言Tinyhttpd服務(wù)器源碼剖析

    C語(yǔ)言Tinyhttpd服務(wù)器源碼剖析

    這篇文章主要為大家介紹了C語(yǔ)言Tinyhttpd服務(wù)器源碼剖析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-09-09
  • 基于OpenCV實(shí)現(xiàn)車道線檢測(cè)(自動(dòng)駕駛 機(jī)器視覺)

    基于OpenCV實(shí)現(xiàn)車道線檢測(cè)(自動(dòng)駕駛 機(jī)器視覺)

    無(wú)人駕駛技術(shù)是機(jī)器學(xué)習(xí)為主的一門前沿領(lǐng)域,在無(wú)人駕駛領(lǐng)域中機(jī)器學(xué)習(xí)的各種算法隨處可見,本文將為大家介紹無(wú)人駕駛技術(shù)中的車道線檢測(cè),感興趣的小伙伴可以了解一下
    2021-11-11
  • C++簡(jiǎn)明分析講解布爾類型及引用

    C++簡(jiǎn)明分析講解布爾類型及引用

    布爾型(Boolean),是一種類型變量類型,引用(reference)就是C++對(duì)C語(yǔ)言的重要擴(kuò)充。引用就是某一變量(目標(biāo))的一個(gè)別名,對(duì)引用的操作與對(duì)變量直接操作完全一樣
    2022-04-04
  • C語(yǔ)言之sizeof與strlen的使用及區(qū)別

    C語(yǔ)言之sizeof與strlen的使用及區(qū)別

    這篇文章主要介紹了C語(yǔ)言之sizeof與strlen的使用及區(qū)別,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • C語(yǔ)言堆結(jié)構(gòu)處理TopK問題詳解

    C語(yǔ)言堆結(jié)構(gòu)處理TopK問題詳解

    TopK問題即在N個(gè)數(shù)中找出最大的前K個(gè),這篇文章將詳細(xì)講解如何利用小根堆的方法解決TopK問題,文中代碼具有一定參考價(jià)值,快跟隨小編一起學(xué)習(xí)一下吧
    2022-06-06

最新評(píng)論

定西市| 香格里拉县| 依兰县| 高台县| 洛阳市| 永川市| 玛沁县| 樟树市| 米脂县| 南丰县| 马龙县| 花莲县| 平阳县| 莱州市| 阳江市| 特克斯县| 博罗县| 柯坪县| 前郭尔| 邯郸县| 塔河县| 衡山县| 开平市| 若尔盖县| 临夏县| 沂南县| 襄樊市| 新余市| 晋江市| 天全县| 呈贡县| 贺州市| 兴山县| 名山县| 大荔县| 新密市| 桦甸市| 和政县| 且末县| 惠来县| 辛集市|