• <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>
            隨筆-59  評論-36  文章-0  trackbacks-0
            SRC:my_vector - SRC

            在寫這段代碼的過程中,遇見了“某些函數(shù)如何實(shí)現(xiàn)”這樣的問題,于是就參考<STL 源碼剖析>,說實(shí)話這本書雖然在硬盤里存在了好久,但直到此時(shí)才用上。其實(shí)在參考的時(shí)候也猶豫了,到底是應(yīng)該完全按照自己的思路寫,還是借鑒書上或他人的現(xiàn)有代碼寫,這種想法致使我當(dāng)時(shí)還想順帶著連allocator類也一寫,但最后的結(jié)果是借鑒并且放棄寫allocator,理由是“一步步來”。


            寫完這些代碼后,我初步得出這樣的結(jié)論:模板很麻煩,迭代器很麻煩。模板只能看有關(guān)模板的書了,而對于迭代器,我起初的想法是能將自己寫的容器兼容STL,但現(xiàn)在看來這很是一個(gè)天真的想法,因?yàn)槲液髞韽恼搲弥?,STL中的各個(gè)模板間都是有類型依賴的,例如代碼:
            int a[]={3,4,6,3,87,654,3,9,8,1,9,10,51};
            my_vector<int> test(a,a+13);

            sort( test.begin() ,  test.end() );  //  OK!
            sort( test.rbegin() ,  test.rend() );   //  編譯錯(cuò)誤,提示 "“iterator_category”: 不是“my_space::_R_Iterator<Iter_type>”的成員"

            P.S. : my_space::_R_Iterator<Iter_type>是我自定義的逆序迭代器類

            這就意味著,想寫出兼容STL的東西,就必須先了解STL的內(nèi)部。于是乎my_vector就只能自娛自樂了,除非我把整個(gè)STL都模仿出來或者想辦法引入STL中的迭代器。



            P.S. : my_vector類中的成員還有不少的問題尚未被發(fā)現(xiàn)
            posted on 2009-05-08 15:13 zhaoyg 閱讀(237) 評論(0)  編輯 收藏 引用 所屬分類: 失敗的嘗試
            久久久久国产精品麻豆AR影院| 亚洲AV无一区二区三区久久| 国产日韩久久免费影院| 国产高清国内精品福利99久久| 午夜精品久久久久9999高清| 久久亚洲美女精品国产精品| 日本久久久久久久久久| 97久久精品无码一区二区| 久久久久无码国产精品不卡| 久久久久久久人妻无码中文字幕爆| 大蕉久久伊人中文字幕| 人妻精品久久无码专区精东影业| 国产高潮久久免费观看| 国产成人精品久久二区二区| 久久天天躁夜夜躁狠狠躁2022| 久久综合狠狠综合久久激情 | 久久久无码精品午夜| 久久99热只有频精品8| 97久久国产综合精品女不卡 | 国产精品日韩深夜福利久久| 欧美喷潮久久久XXXXx| 国产精品久久久久久久久软件| 国产香蕉97碰碰久久人人| 久久国产精品99久久久久久老狼| 色欲av伊人久久大香线蕉影院| 久久综合久久综合亚洲| 久久久久综合国产欧美一区二区| 久久国产精品二国产精品| 777久久精品一区二区三区无码 | 欧美成a人片免费看久久| 久久久久97国产精华液好用吗| 精品一区二区久久| 国产成人精品久久免费动漫| 77777亚洲午夜久久多喷| 国产精品久久久福利| 久久综合丁香激情久久| 狠狠色丁香婷婷综合久久来| 伊人久久大香线焦综合四虎| 久久亚洲精品视频| 久久播电影网| 久久免费看黄a级毛片|