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

Design&Art

C++博客 首頁(yè) 新隨筆 聯(lián)系 聚合 管理
  26 Posts :: 0 Stories :: 38 Comments :: 0 Trackbacks
書(shū)上已經(jīng)講得很清楚了,這里給出一個(gè)編譯通過(guò)的例子。
 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可以是單向列表節(jié)點(diǎn)或雙向列表節(jié)點(diǎn)。
struct ListIter       // 此處這個(gè)迭代器特定只為列表服務(wù),因?yàn)槠?/span>
{                     // 獨(dú)特的 operator++之故。   
    Item* ptr; // 保持與容器之間的一個(gè)聯(lián)系
    
    ListIter(Item
* p = 0)  // default ctor
        :  ptr(p) { }
    
    
// 不必實(shí)作 copy ctor,因?yàn)榫幾g器提供的預(yù)設(shè)行為已足夠。
    
// 不必實(shí)作 operator=,因?yàn)榫幾g器提供的預(yù)設(shè)行為已足夠。

    Item
& operator*()  const return *ptr; }
    Item
* operator->() const return  ptr; }
    
    
// 以下兩個(gè)operator++遵循標(biāo)準(zhǔn)作法,參見(jiàn)[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

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

    
// 執(zhí)行結(jié)果: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 安帛偉 閱讀(866) 評(píng)論(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>
            在线观看中文字幕不卡| 99在线视频精品| 亚洲精品免费电影| 亚洲承认在线| 亚洲激情综合| 亚洲免费电影在线观看| 夜夜嗨av色一区二区不卡| 一区二区三区毛片| 欧美一乱一性一交一视频| 欧美主播一区二区三区| 女女同性精品视频| 亚洲国产日本| 亚洲专区免费| 欧美激情二区三区| 在线视频精品| 亚洲一区影音先锋| 免播放器亚洲一区| 欧美精品www| 在线免费观看欧美| 欧美一区二区高清在线观看| 亚洲国产美女精品久久久久∴| 亚洲欧美久久久| 欧美日韩亚洲一区二区三区在线| 国际精品欧美精品| 亚洲一区自拍| 一区二区三区视频观看| 欧美另类视频| 在线视频免费在线观看一区二区| 欧美国产日韩一区二区| 久久久午夜电影| 国产一级久久| 久久永久免费| 久久人人爽人人爽爽久久| 国产日韩亚洲欧美精品| 久久riav二区三区| 欧美一区二区在线| 在线欧美日韩| 亚洲国产99| 欧美精品日韩一本| 亚洲综合色在线| 午夜精品久久久久99热蜜桃导演| 国产亚洲精品久| 久久久精彩视频| 欧美jizz19性欧美| 亚洲美洲欧洲综合国产一区| 一二三区精品| 国产日韩专区| 99re国产精品| 禁断一区二区三区在线| 国内精品久久久久影院薰衣草| 亚洲在线播放电影| 性久久久久久久久久久久| 一区二区三区在线视频免费观看| 亚洲国产岛国毛片在线| 国产精品国产三级国产专区53 | 亚洲第一搞黄网站| 亚洲精品一区二区三区蜜桃久| 国产精品揄拍500视频| 亚洲老司机av| 亚洲黄色一区| 久久亚洲一区二区| 久久精品国产亚洲5555| 欧美日韩高清在线播放| 欧美成人一区二区在线| 黑人操亚洲美女惩罚| 亚洲中字黄色| 亚洲欧美变态国产另类| 欧美久久综合| 日韩视频国产视频| 亚洲在线观看| 国产精品久久久久久久久免费樱桃| 亚洲经典在线看| 亚洲人午夜精品免费| 欧美大片在线看免费观看| 亚洲电影免费在线| 一本色道88久久加勒比精品| 欧美电影在线播放| 亚洲乱码视频| 欧美专区在线观看一区| 国产视频一区二区三区在线观看| 久久漫画官网| 夜夜嗨一区二区三区| 久久国产精彩视频| 久久久九九九九| 欧美成人免费全部| 99精品热视频只有精品10| 国产精品美女黄网| 久久精品伊人| 中文在线不卡| 欧美成人69av| 久久国内精品自在自线400部| 国语精品中文字幕| 国产精品日韩在线观看| 麻豆精品91| 欧美在线啊v| 亚洲图片欧美午夜| 亚洲国产高清自拍| 欧美国产视频在线观看| 久久久久成人网| 久久黄色影院| 亚洲欧美韩国| 99在线精品观看| 国产在线国偷精品产拍免费yy| 欧美视频免费| 欧美日韩国产精品成人| 欧美不卡激情三级在线观看| 久久国产精品久久久久久电车| 亚洲一本大道在线| 亚洲视频一区在线| 国产精品99久久久久久有的能看| 亚洲成色777777女色窝| 亚洲国产精品成人综合色在线婷婷 | 麻豆精品一区二区综合av| 亚洲一区欧美激情| 新狼窝色av性久久久久久| 久久gogo国模啪啪人体图| 欧美亚洲日本网站| 久久视频在线视频| 欧美88av| 亚洲少妇在线| 久久精品99国产精品日本| 快射av在线播放一区| 久久中文欧美| 久久久综合视频| 亚洲精品一区二区三区福利| 在线亚洲欧美| 久久嫩草精品久久久精品一| 欧美日韩国产精品专区| 国产伦精品一区二区三区在线观看 | 亚洲精品三级| 这里只有精品视频在线| 久久免费视频在线| 欧美日韩国产在线播放网站| 国产精品视频xxx| 亚洲二区视频| 久久久久久久久蜜桃| 91久久中文字幕| 久久精品人人做人人综合| 国产精品豆花视频| 999在线观看精品免费不卡网站| 久久久一二三| 久久久久国产一区二区| 国产精品普通话对白| 在线视频亚洲一区| 最新成人av在线| 久久av在线| 黄色成人小视频| 裸体歌舞表演一区二区| 小黄鸭精品aⅴ导航网站入口| 欧美高清在线精品一区| 亚洲精品国产系列| 亚洲国产精品久久久久秋霞影院 | 亚洲欧美综合精品久久成人| 欧美色图首页| 久久精品国产亚洲一区二区| 午夜精品av| 亚洲一级电影| 亚洲国产成人tv| 狂野欧美激情性xxxx| 久久精品人人做人人爽电影蜜月| 韩国一区二区三区美女美女秀| 久久久亚洲精品一区二区三区| 久久久久国产精品一区二区| 亚洲第一网站| 宅男噜噜噜66一区二区66| 免费在线欧美黄色| 欧美日韩亚洲天堂| 欧美~级网站不卡| 欧美日韩国产丝袜另类| 久久综合给合久久狠狠色| 免费看精品久久片| 久久se精品一区精品二区| 免费亚洲一区| 欧美不卡在线| 一区精品在线| 午夜国产精品影院在线观看| 日韩亚洲欧美一区| 久久久久久高潮国产精品视| 亚洲欧美日韩精品久久| 欧美电影免费观看高清| 六十路精品视频| 韩国女主播一区| 亚洲欧美制服另类日韩| 亚洲一区视频| 欧美精品手机在线| 香蕉亚洲视频| 欧美激情四色 | 免费日韩成人| 亚洲性视频网站| 一区国产精品| 国产精品久久久999| 久久免费高清| 久久精品盗摄| 亚洲人成免费| 亚洲欧美视频在线| 在线观看成人网| 国产精品久久久久久久久免费桃花 | 一区二区91| 亚洲精品一二| 亚洲精品精选|