• <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>
            對于地址不連續的比如鏈表,鏈隊之類的,結點與結點之間靠next指針連接(假設單鏈).
            那么,從鏈首找到鏈中間某個元素需要一直沿next指針尋找,
            麻煩在于編程不方便.

            可否在形式上統一對連續空間和非連續空間的訪問方式,
            通過增加一個智能指針,記關鍵字smart,將結點的next指針用smart標記
            比如鏈表:
            typedef struct LNode
            {
            ?? ElemType data;
            ?? smart?? struct LNode * next;
            }LNode, *LinkList;

            LinkList L;
            smart? p = L?;
            //初始化
            //各項鏈表操作

            p = p+i ; //訪問第i個結點
            這樣不用通過while(p->next != NULL) {p= p->next;}
            訪問方式及其簡便,就像訪問連續地址的數組一樣,這不是很好嗎?

            當然, 運行時本質上仍然不能直接訪問,我想做到的只是,編程簡單方便,無可厚非.

            大家不要抱著一個"不存在就是不合理的"想法,希望可以共同探討.
            posted on 2006-12-22 12:49 哈哈 閱讀(838) 評論(6)  編輯 收藏 引用

            評論:
            # re: C++是否可以考慮增加智能指針 2006-12-22 13:15 | Francis Arcanum
            STL里的iterator就是這個東西么  回復  更多評論
              
            # re: C++是否可以考慮增加智能指針 2006-12-22 14:26 | LOGOS
            Francis Arcanum說的沒錯。

            此外,智能指針并不是你所說的這個概念  回復  更多評論
              
            # re: C++是否可以考慮增加智能指針 2006-12-22 15:21 | 小山日志
            不知道你是不是已經知道STL中的iterator了,它被劃分成五類,輸入,輸出,前向,雙向和隨機的。
            因為鏈表不能提供隨機訪問,所以stl中鏈表迭代器(iterator)不支持你想要的這種形式:
            p = p+i ; //訪問第i個結點
            而是一個雙向迭代器,你可以這樣:p++或者p--訪問到你需要的節點。
            不過stl算法中有一個advance函數,你可以這樣使用:
            advance(p, i);
            C++只是沒有把作為表達式重載來設計,需要的話你可以自己來這樣做。^_^  回復  更多評論
              
            # re: C++是否可以考慮增加智能指針 2006-12-22 15:24 | 小山日志
            如LOGOS所說,智能指針更大的用處應當是資源管理,而不只是提供語法糖。
            你可以參看scott的一些文章,而BOOST中有幾個設計良好的,被納入tr1的智能指針。  回復  更多評論
              
            # re: C++是否可以考慮增加智能指針 2006-12-22 16:26 | 空明流轉
            iterator。已經有這個選擇了。另外樓上說的沒有錯,任何一個編譯器機制都不是語法糖。不過至于boost的smart pointer,我覺得loki更加好一點。  回復  更多評論
              
            # re: C++是否可以考慮增加智能指針[未登錄] 2009-10-10 23:52 | Primer
            這叫智能指針?  回復  更多評論
              
            久久精品亚洲中文字幕无码麻豆| 久久精品国产亚洲精品| 性高湖久久久久久久久| 久久91综合国产91久久精品| 91精品久久久久久无码| A级毛片无码久久精品免费| 91视频国产91久久久| 一本色道久久88综合日韩精品| 无码人妻精品一区二区三区久久久 | 久久久久久国产精品无码下载| 精品国产乱码久久久久久人妻| 国产精品久久久久影视不卡| 久久频这里精品99香蕉久| 久久se精品一区二区| 久久久国产精华液| 韩国三级中文字幕hd久久精品| 久久亚洲精品成人av无码网站| 久久青青草原精品国产软件| 国产精品久久永久免费| 热re99久久6国产精品免费| 亚洲国产成人精品女人久久久| 亚洲国产精品婷婷久久| 国产精品一区二区久久国产 | 97久久国产综合精品女不卡| 99久久夜色精品国产网站| 91精品国产高清久久久久久io| 久久久久久精品久久久久| 亚洲国产精品无码久久青草| 国产高潮国产高潮久久久91 | 久久福利资源国产精品999| 国产免费久久久久久无码| 26uuu久久五月天| 国产亚洲成人久久| 国产午夜精品理论片久久| 国产精品综合久久第一页| 国产精品丝袜久久久久久不卡| 9191精品国产免费久久 | 亚洲狠狠婷婷综合久久蜜芽| 精品久久久无码21p发布| 久久精品青青草原伊人| 亚洲国产精品无码成人片久久|