deque (STL/CLR)

模板类描述对象控件具有随机访问组件的更改长的序列。 使用容器 deque 管理类似于连续块存储,但是,可以增大或缩小在任一端,而无需复制其余元素的序列。 因此它可以有效地实现 double-ended queue。 出自本地名称。)

在如下解释, GValue 相同。 Value ,除非后者是 ref 类型,因此,在与 Value^情况下。

template<typename Value>
    ref class deque
        :   public
        System::ICloneable,
        System::Collections::IEnumerable,
        System::Collections::ICollection,
        System::Collections::Generic::IEnumerable<GValue>,
        System::Collections::Generic::ICollection<GValue>,
        System::Collections::Generic::IList<GValue>,
        Microsoft::VisualC::StlClr::IDeque<GValue>
    { ..... };

参数

  • G值
    一个元素的泛型类型在控件的序列。


  • 受控序列中的元素的类型。

成员

类型定义

说明

deque::const_iterator (STL/CLR)

常数的迭代器类型的控制序列的。

deque::const_reference (STL/CLR)

常量的类型对元素。

deque::const_reverse_iterator (STL/CLR)

常数的反向迭代器类型的控制序列的。

deque::difference_type (STL/CLR)

带符号距离的类型两个元素间的。

deque::generic_container (STL/CLR)

泛型接口的类型的容器。

deque::generic_iterator (STL/CLR)

一个迭代的类型泛型接口的容器的。

deque::generic_reverse_iterator (STL/CLR)

一个反向迭代器的类型泛型接口的容器的。

deque::generic_value (STL/CLR)

一个元素的类型泛型接口的容器的。

deque::iterator (STL/CLR)

一个迭代器类型的控制序列的。

deque::reference (STL/CLR)

引用的类型的元素。

deque::reverse_iterator (STL/CLR)

一个反向迭代器类型的控制序列的。

deque::size_type (STL/CLR)

带符号距离的类型两个元素间的。

deque::value_type (STL/CLR)

元素的类型。

成员函数

说明

deque::assign (STL/CLR)

替换所有元素。

deque::at (STL/CLR)

访问一个元素在指定的位置。

deque::back (STL/CLR)

访问最后一个元素。

deque::begin (STL/CLR)

指定受控序列的开头。

deque::clear (STL/CLR)

移除所有元素。

deque::deque (STL/CLR)

构造容器对象。

deque::empty (STL/CLR)

测试组件是否不存在。

deque::end (STL/CLR)

指定受控序列的末尾。

deque::erase (STL/CLR)

移除指定位置处的元素。

deque::front (STL/CLR)

访问第一个元素。

deque::insert (STL/CLR)

添加元素在指定的位置。

deque::pop_back (STL/CLR)

移除最后一个元素。

deque::pop_front (STL/CLR)

移除第一个元素。

deque::push_back (STL/CLR)

添加新的最后一个元素。

deque::push_front (STL/CLR)

添加新的第一个元素。

deque::rbegin (STL/CLR)

指定反转的受控序列的开头。

deque::rend (STL/CLR)

指定反转的受控序列的末尾。

deque::resize (STL/CLR)

更改元素的数量。

deque::size (STL/CLR)

计算元素的数量。

deque::swap (STL/CLR)

交换两个容器的内容。

deque::to_array (STL/CLR)

复制控件序列到新数组。

属性

说明

deque::back_item (STL/CLR)

访问最后一个元素。

deque::front_item (STL/CLR)

访问第一个元素。

运算符

说明

deque::operator!= (STL/CLR)

确定两 deque 对象是否不相等。

deque::operator[] (STL/CLR)

访问一个元素在指定的位置。

operator< (deque) (STL/CLR)

确定 deque 对象是否大于另一个 deque 对象小于。

operator<= (deque) (STL/CLR)

确定 deque 对象是否小于或等于另一 deque 对象。

operator= (deque) (STL/CLR)

替换控件序列。

operator== (deque) (STL/CLR)

确定 deque 对象是否与另一 deque 对象相等。

operator> (deque) (STL/CLR)

确定 deque 对象是否大于另一个 deque 对象大。

operator>= (deque) (STL/CLR)

确定 deque 对象是否大于或等于另一 deque 对象。

接口

接口

说明

ICloneable

重复的对象。

IEnumerable

顺序排列元素。

ICollection

维护元素组。

IEnumerable<T>

顺序排列类型元素。

ICollection<T>

维护类型元素的组。

IList<T>

maintain 排序的类型元素的组。

IDeque<值>

维护泛型容器。

备注

对象分配并通过存储的一些处理控件指定块 Value 元素序列中未使用记忆字段。 数组增大在要求。 增大发生,在预置或追加一个新元素的成本是常数时,因此,其余的元素不受打扰。 还可以移除元素在任一端在常数时并不妨碍的其余元素。 因此,、向量、双端队列是基容器的理想候选项模板类 queue (STL/CLR) 或模板类的 stack (STL/CLR)

deque 对象支持随机访问迭代器,这意味着可以引用元素直接为其数字位置,计数从第一个 (前) 元素的零,最后 (返回) 元素的 deque::size (STL/CLR)() - 1 。 这也意味着、向量、双端队列是基容器的理想候选项模板类的 priority_queue (STL/CLR)

迭代器、向量、双端队列存储的句柄。其关联的、向量、双端队列对象,与其指定元素那样偏重。 您只能使用迭代器与其关联的容器对象。 、向量、双端队列元素那样偏重必须是 not 与其位置相同。 插入的第一个元素的偏压零,下一个追加的元素具有偏压 1,但是,下一个已在前面的元素具有偏压 -1。

插入或清除元素在任一端执行 not 修改元素的值存储在任何有效的偏重。 插入或清除内部元素,但是, can 更改元素值存储在特定偏重,因此,迭代器指定的值还可能更改。 (容器可能必须向上或复制元素在插入之前创建漏洞或在清除加载后漏洞。)但是,在中,只要其偏重指定有效的元素,迭代器、向量、双端队列保持有效。 此外,有效的迭代器使 dereferencable--可以使用以便为它指定的访问或修改元素值--只要其偏重于与 end()返回的迭代器那样偏重不相等。

清除或移除元素调用其存储的值的析构函数。 销毁容器清除所有元素。 因此,元素类型为 ref 类的容器以确保组件不活动得比容器时间。 但是,请注意,容器处理执行 not 销毁其元素。

要求

标题: <cliext/deque>

命名空间: cliext

请参见

参考

list (STL/CLR)

priority_queue (STL/CLR)

queue (STL/CLR)

stack (STL/CLR)

vector (STL/CLR)

其他资源

STL/CLR库参考