青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

Design&Art

C++博客 首頁 新隨筆 聯系 聚合 管理
  26 Posts :: 0 Stories :: 38 Comments :: 0 Trackbacks
書上已經講得很清楚了,這里給出一個編譯通過的例子。
 3mylist.h
// file: 3mylist.h
#include <iostream>

template 
<typename T>
class ListItem
{
public:
    ListItem(T value, ListItem
<T>* next)
    
{
        _value 
= value;
        _next 
= next;
    }

    T value() 
const return _value; }
    
void value(T value) { _value = value; }
    ListItem
* next() const return _next; }
    
void next(ListItem* next) { _next = next; }
    
//
private:
    T _value;
    ListItem
* _next;  // †ÎÏò´®ÁУ¨single linked list£©
}
;

template 
<typename T>
class List
{
public:
    
~List()
    
{
        
if(_front == _end) return;
        ListItem
<T>* item = _front;
        
while(item != _end)
        
{
            ListItem
<T>* iter = item;
            item 
= item->next();
            delete iter;
        }

    
    }

    
void insert_front(T value)
    
{
        _front 
= new ListItem<T>(value, _front);
    }

    
void insert_end(T value)
    
{
        
if(_front == _end)
        
{
            _front 
= new ListItem<T>(value, _front);
        }

        ListItem
<T>* item = _front;
        
while(item->next() != _end)
        
{
            item 
= item->next();
        }

        item
->next(new ListItem<T>(value, _end));
    }

    
void display(std::ostream &os = std::cout) const
    
{
        ListItem
<T>* item = _front;
        
while(item != _end)
        
{
            os
<<item->value()<<" ";
            item 
= item->next();
        }

        os
<<endl;
    }

    ListItem
<T>* front()return _front;}
    ListItem
<T>* end()return _end;}
    
// 
private:
    ListItem
<T>* _end;
    ListItem
<T>* _front;
    
long _size;
}
;
3mylist-iter.h
// file : 3mylist-iter.h
#include "3mylist.h"
template 
<class Item> // Item可以是單向列表節點或雙向列表節點。
struct ListIter       // 此處這個迭代器特定只為列表服務,因為其
{                     // 獨特的 operator++之故。   
    Item* ptr; // 保持與容器之間的一個聯系
    
    ListIter(Item
* p = 0)  // default ctor
        :  ptr(p) { }
    
    
// 不必實作 copy ctor,因為編譯器提供的預設行為已足夠。
    
// 不必實作 operator=,因為編譯器提供的預設行為已足夠。

    Item
& operator*()  const return *ptr; }
    Item
* operator->() const return  ptr; }
    
    
// 以下兩個operator++遵循標準作法,參見[Meyers96]條款6      
    
// (1) pre-increment operator
    ListIter& operator++()
    
{ ptr =  ptr->next(); return *this; }
    
    
// (2) post-increment operator
    ListIter  operator++(int)
    
{ ListIter tmp = *this++*thisreturn tmp; }
    
    
bool operator==(const ListIter& i) const
    
return ptr == i.ptr; }
    
    
bool operator!=(const ListIter& i) const
    
return ptr != i.ptr; }
}
;
3mylist-iter.cpp
// file : 3mylist-iter.cpp

#include 
"stdafx.h"
#include 
"3mylist-iter.h"
#include 
<iostream>

using namespace std;

//  摘自 SGI <stl_algo.h>
template <class InputIterator, class T>
InputIterator find(InputIterator first,
                   InputIterator last,
                   
const T& value) 
{
    
while (first != last && (*first).value() != value)
        
++first;
    
return first;
}


// 3mylist-iter-test.cpp
void main()
{
    List
<int> mylist;
    
for(int i=0; i<5++i) {
        mylist.insert_front(i);
        mylist.insert_end(i
+2);
    }

    mylist.display();     
// 10 ( 4 3 2 1 0 2 3 4 5 6 )
    ListIter<ListItem<int> > begin(mylist.front());
    ListIter
<ListItem<int> > end(mylist.end());  // default 0, null
    ListIter<ListItem<int> > iter; // default 0, null

    
// 執行結果:found. 3
    iter = find(begin, end, 3);
    
if (iter == end)
        cout 
<< "not found" << endl;
    
else
        cout 
<< "found.  " << iter->value() << endl;

    
// 執行結果:not found
    iter = find(begin, end, 7);
    
if (iter == end)
        cout 
<< "not found" << endl;
    
else
        cout 
<< "found. " << iter->value() << endl;

    
return;
}
posted on 2007-04-16 19:54 安帛偉 閱讀(873) 評論(0)  編輯 收藏 引用 所屬分類: STL
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            销魂美女一区二区三区视频在线| 亚洲精品小视频在线观看| 亚洲综合电影| 国产日本亚洲高清| 噜噜噜在线观看免费视频日韩| 久久国产直播| 亚洲欧洲免费视频| 99re6这里只有精品| 国产精品亚洲综合天堂夜夜| 久久久人人人| 欧美高清一区| 久久狠狠亚洲综合| 蜜桃久久精品乱码一区二区| 亚洲桃花岛网站| 午夜精品久久久久久久蜜桃app| 一色屋精品视频在线观看网站| 亚洲大胆人体在线| 国产精品久久777777毛茸茸| 久久久免费精品| 欧美激情免费在线| 久久国产夜色精品鲁鲁99| 麻豆精品一区二区av白丝在线| 亚洲视频网站在线观看| 欧美影院一区| 亚洲一区二区三区久久| 久久综合九色综合网站| 亚洲综合色婷婷| 久久综合久久久| 欧美在线黄色| 亚洲精品一二区| 久久久久久欧美| 欧美黄网免费在线观看| 亚洲欧美日韩在线一区| 免播放器亚洲一区| 欧美中文在线观看| 欧美精品999| 免费看亚洲片| 国产欧美一级| 一本高清dvd不卡在线观看| 在线精品观看| 欧美一级黄色网| 亚洲性av在线| 欧美激情中文字幕乱码免费| 久久躁日日躁aaaaxxxx| 国产精品久久久一本精品| 亚洲国产精品va在看黑人| 韩国精品在线观看| 亚洲午夜激情| 亚洲视频碰碰| 亚洲国产婷婷香蕉久久久久久| 日韩亚洲欧美成人一区| 亚洲毛片av| 欧美成人精品高清在线播放| 久久久噜噜噜久噜久久| 国产欧美日本一区视频| 亚洲一区二区毛片| 午夜精品国产更新| 欧美午夜精品久久久久久孕妇 | 亚洲一区免费看| 欧美高清视频一区二区| 欧美国产日韩一区二区| 亚洲成人在线免费| 久久视频精品在线| 六月天综合网| 在线观看亚洲视频| 久久综合久色欧美综合狠狠| 免费的成人av| 最新成人av网站| 欧美精品日韩一区| 亚洲日本成人网| 亚洲午夜一级| 国产精品久久国产愉拍| 亚洲欧美日韩另类| 久久免费精品日本久久中文字幕| 国模 一区 二区 三区| 久久精品一区四区| 欧美激情在线有限公司| 亚洲免费观看视频| 国产精品高清在线| 久久国产精品免费一区| 美国成人毛片| 夜夜嗨av一区二区三区网站四季av | 国产精品va在线播放| 日韩一级在线观看| 午夜国产精品视频| 国产亚洲精品久久久久婷婷瑜伽| 欧美一区二区三区免费视| 狂野欧美激情性xxxx| 亚洲欧洲在线观看| 国产精品久久久久永久免费观看| 欧美在线观看网址综合| 欧美成人资源网| 亚洲一二三区在线| 极品av少妇一区二区| 欧美日韩一区二区免费视频| 欧美一级免费视频| 亚洲国产日韩一区| 欧美综合二区| 99re6热只有精品免费观看| 国产精品久久久久9999高清| 久久免费精品视频| 在线中文字幕不卡| 欧美成人午夜| 欧美一级专区| 亚洲精品自在在线观看| 国产日韩在线亚洲字幕中文| 欧美高潮视频| 欧美制服第一页| 一本一本久久a久久精品综合妖精| 久久综合久色欧美综合狠狠| 夜夜嗨一区二区| 一区精品久久| 国产免费一区二区三区香蕉精| 欧美成在线观看| 久久精品国产清自在天天线| 在线视频日韩精品| 亚洲国产激情| 欧美不卡一区| 久久综合综合久久综合| 欧美亚洲日本网站| 一区二区三区免费观看| 亚洲国产精品www| 国产真实乱偷精品视频免| 国产精品露脸自拍| 欧美日韩一区三区| 欧美精品一区二区在线播放| 久久一区二区三区国产精品 | 亚洲欧美激情在线视频| 亚洲精品影视| 亚洲狠狠丁香婷婷综合久久久| 国产精品一区视频| 欧美激情一级片一区二区| 欧美一区二区在线免费观看| 中文av字幕一区| 99国产精品99久久久久久| 亚洲国产一成人久久精品| 影视先锋久久| 亚洲国产精品久久久久秋霞不卡 | 国产精品www网站| 欧美久久视频| 欧美另类在线播放| 欧美第一黄网免费网站| 欧美高清一区| 欧美日本免费| 欧美午夜电影完整版| 国产精品xvideos88| 国产精品人成在线观看免费| 国产精品美女xx| 国产麻豆日韩欧美久久| 国产午夜精品理论片a级大结局 | 欧美国产综合视频| 欧美激情一区二区| 欧美日韩日韩| 国产精品夜色7777狼人| 国产永久精品大片wwwapp| 怡红院av一区二区三区| 亚洲国产一二三| 一本久久知道综合久久| 午夜精品久久久久久久99黑人| 性欧美大战久久久久久久久| 久久久欧美精品| 亚洲第一网站免费视频| 99re6这里只有精品| 裸体女人亚洲精品一区| 欧美一区二区三区免费大片| 新片速递亚洲合集欧美合集| 久久av一区二区三区漫画| 久久久久久91香蕉国产| 欧美精品一区在线观看| 国产精品国产三级国产aⅴ浪潮 | 久久深夜福利免费观看| 欧美大片一区二区| 国产精品一区二区三区成人| 国模精品一区二区三区| 99国产精品国产精品毛片| 亚洲欧洲av一区二区三区久久| 久久天天躁狠狠躁夜夜av| 亚洲国产日韩欧美在线动漫| 亚洲影院免费观看| 久久夜色撩人精品| 国产精品入口66mio| 亚洲电影自拍| 午夜精品一区二区三区在线视 | 亚洲人成在线观看一区二区| 亚洲人精品午夜| 先锋资源久久| 欧美日韩亚洲综合在线| 精久久久久久久久久久| 亚洲午夜免费视频| 免费观看一区| 午夜视频一区二区| 欧美日韩精品国产| 永久域名在线精品| 欧美亚洲免费高清在线观看| 亚洲国产导航| 久久综合精品国产一区二区三区| 国产精品一区2区| 亚洲一区免费观看| 亚洲日本一区二区三区| 久久综合伊人77777蜜臀|