Перевод этой страницы?:

Операторы двусторонней очереди

Синтаксис:

    #include <deque>
    T& operator[]( size_type index );
    const T& operator[]( size_type index ) const;
    deque operator=(const deque& c2);
    bool operator==(const deque& c1, const deque& c2);
    bool operator!=(const deque& c1, const deque& c2);
    bool operator<(const deque& c1, const deque& c2);
    bool operator>(const deque& c1, const deque& c2);
    bool operator<=(const deque& c1, const deque& c2);
    bool operator>=(const deque& c1, const deque& c2);

Все контейнеры C++ могут быть сравнены и присвоены с помощью стандартных операторов: ==, !=, <=, >=, <, > и =. Доступ к отдельным элементам двусторонней очереди осуществляется посредством оператора [].

Сравнение двух двусторонних очередей или присваивание одной двусторонней очереди другой требует линейное время.

Оператор [] выполняется за константное время.

Две двусторонние очереди равны, если:

  1. их размер совпадает и
  2. каждый i-й элемент в одной двусторонней очереди равен i-му элементу в другой.

Сравнение двусторонних очередей происходит лексикографически.

Например, следующий код использует оператор [] для доступа ко всем элементам двусторонней очереди:

   deque<int> dq( 5, 1 );
   for( size_t i = 0; i < dq.size(); i++ ) {
     cout << "Элемент " << i << " - " << dq[i] << '\n';
   }

Смотри также: at