• <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>
            隨筆-167  評論-8  文章-0  trackbacks-0

            STL設計的精髓在于,把容器(Containers)和算法(Algorithms)分開,彼此獨立設計,最后再用迭代器(Iterator)把他們粘 合在一起??梢姷髟赟TL中的重要程度。迭代器已經作為一種設計思想被記錄與《設計模式》中,它的意圖在于“提供一種方法順序訪問一個聚合對象中的各 個元素,而又不需暴露該對象的內部表示”。

              迭代器的作用其實相當于一個智能指針,它指向容器內部的數據,可以通過operator *操作符來解指針獲得數據的值,也可以通過operator ->操作符來獲取數據的指針,還能夠重載++,--等運算符來移動指針。

             

            迭代器的分類

            迭代器大致可以分為以下幾種:

            1、Input Interator :只允許作為輸入,也就是只讀(Read Only)
            2、Output Interator :只允許作為輸出,也就是只寫(Write Only)
            3、Forward Interator :允許讀寫,但只能做前向移動
            4、Bidirectional Interator :允許讀寫,可以做雙向移動
            5、Random Access Interator :允許讀寫,可以任意移動

            struct input_iterator_tag {};
            struct output_iterator_tag {};
            struct forward_iterator_tag : public input_iterator_tag {};
            struct bidirectional_iterator_tag : public forward_iterator_tag {};
            struct random_access_iterator_tag : public bidirectional_iterator_tag {};

            posted on 2011-01-07 09:58 老馬驛站 閱讀(277) 評論(0)  編輯 收藏 引用 所屬分類: c++
            久久精品无码一区二区WWW| 岛国搬运www久久| 久久天天躁夜夜躁狠狠躁2022| 久久青青色综合| 婷婷久久香蕉五月综合加勒比| 久久人人爽爽爽人久久久| 国产精品久久久久久久久鸭| 97超级碰碰碰碰久久久久| 国产精品久久久香蕉| 久久国产乱子伦精品免费强| 久久人妻少妇嫩草AV蜜桃| 亚洲精品国精品久久99热一| 久久综合久久综合久久| 久久人妻AV中文字幕| 欧美日韩中文字幕久久伊人| 老男人久久青草av高清| 亚洲国产精品久久久久婷婷软件 | 久久无码AV中文出轨人妻| 囯产极品美女高潮无套久久久| 色欲久久久天天天综合网 | 久久综合色区| 1000部精品久久久久久久久| 久久人人爽人人人人爽AV| 青青青伊人色综合久久| 欧美一区二区三区久久综| 欧美日韩精品久久久久| 久久国产福利免费| 国产AⅤ精品一区二区三区久久| 久久亚洲精品成人av无码网站| 亚洲精品无码久久久久AV麻豆| 国产激情久久久久影院老熟女免费| 日韩精品无码久久久久久| 无码人妻久久一区二区三区免费 | 国产精品久久久久久久app| 狠狠精品久久久无码中文字幕| 91久久婷婷国产综合精品青草| 浪潮AV色综合久久天堂| 亚洲国产精品无码成人片久久| 欧美日韩久久中文字幕| 久久久久亚洲精品日久生情| 久久国产亚洲精品|