Chinaunix首页 | 论坛 | 博客
  • 博客访问: 189297
  • 博文数量: 54
  • 博客积分: 1410
  • 博客等级: 上尉
  • 技术积分: 630
  • 用 户 组: 普通用户
  • 注册时间: 2008-11-02 18:41
文章分类

全部博文(54)

文章存档

2011年(1)

2009年(30)

2008年(23)

我的朋友

分类: C/C++

2009-03-20 15:47:55

头文件:

双端队列deque:基本与向量相同,唯一不同的是,其在序列头部插入和删除操作也具有常量时间复杂度。

deque类的主要成员
    value_type;    //对象类型T,存储在deque中 [定义地方:容器]
    pointer;    //指向T的指针 [容器]
    reference;    //T的引用 [容器]
    const_reference;    //T的常量引用 [容器]
    size_type;    //正整数类型 [容器]
    difference_type;    //整数类型 [容器]
    iterator ;    //访问deque的迭代器 [容器]
    const_iterator;    //访问deque的常量迭代器 [容器]
    reverse_iterator;    //访问deque的反向迭代器 [Reversible容器]
    const_reverse_iterator;    //访问deque的反向迭代器 [Reversible容器]
    iterator begin();    //返回deque的头指针 [容器]
    iterator end();    //返回deque的尾指针 [容器]
    const_iterator begin() const;    //返回deque的常量头指针 [容器]
    const_iterator end() const;    //返回deque的常量尾指针 [容器]
    reverse_iterator rbegin();    //返回反向deque的反向头指针 [Reversible容器]
    reverse_iterator rend();    //返回反向deque的反向尾指针 [Reversible容器]
    size_type size() const;    //返回deque的元素数量 [容器]
    size_type max_size() const;    // 返回最大可允许的deque元素数量值 [容器]
    bool empty() const;    //判断deque是否为空 [容器]
    reference operator[](size_type n);     //返回第n个元素 [Random Access容器]
    const_reerence operator[](size_type n)const;     //返回第n个元素[Random Access容器]
    deque();    //创建一个空deque [容器]
    deque(size_type n);    //创建一个deque,元素数量为n [Sequence]
    deque(size_type n, const T& t);    //创建一个deque,元素数量为n,大小都为t[Sequence]
    deque(const deque &);    //拷贝构造函数 [容器]
    templatedeque(InputIterator, InputIterator);    //采用拷贝的方法创建一个deque,指定了范围 [Sequence]
    ~deque();    // deque的析构函数 [容器]
    deque& operator=(const deque&);    //=运算符重载 [容器]
    reference front();    // 返回第一个元素 [Sequence]
    const_reference front() const;    //返回第一个元素 [Sequence]
    reference back();    //返回最后一个元素 [Back Insertion Sequence]
    const_reference back() const;    //返回最后一个元素 [Back Insertion Sequence]
    void push_back(const T&);    //在deque尾部插入一个元素 [Back Insertion Sequence]
    void pop_back();    //删除最后一个元素 [Back Insertion Sequence]
    void swap(deque&);    //交换两个deque的内容 [容器]
    iterator insert(iterator pos, const T& x);    //在pos前出入x [Sequence]
    templatevoid insert(iterator pos, InputIteratorf, InputIterator I);    //在位置pos位置前插入范围为[fisrt, last]的元素 [Sequence]
    void insert(iterator pos, size_type n, const T& x);    //在位置pos前出入n个x [Sequence]
    iterator erase(iterator pos);    //删除在位置pos的元素 [Sequence]
    iterator erase(iterator first, iterator last);    //删除在[first, last]之间的元素 [Sequence]
    void clear();    //删除所有的元素 [Sequence]
    void resize(size_type n, t = T());    //插入或删除使元素个数为n插入的值为t [Sequence]
    bool operator==(const deque&, const deque&);    //重载==运算符 [Forward容器]
    bool operator<(const deque&, const deque&);    //小于逻辑运算符 [Forward容器]

    所有的deque成员都在其祖先中定义,deque自身没有定义任何新的变量或函数,除了上面的成员之后还可以查看随机接入容器(random access 容器),前向插入序(Front insertion sequence)和反向插入序列(Back insertion sequence)中定义的新变量。

阅读(1558) | 评论(1) | 转发(0) |
0

上一篇:向量vector

下一篇:表list

给主人留下些什么吧!~~

chinaunix网友2010-11-24 21:26:41

先学习了