C++ Deque Library - deque() Function



Description

The C++ range constructor std::deque::deque() Constructs a deque with as many elements as in range of first to last. Storage requirement for this container is fulfilled by internal allocator.

Declaration

Following is the declaration for std::deque::deque() constructor form std::deque header.

C++98

template <class InputIterator>
deque (InputIterator first, InputIterator last,
       const allocator_type& alloc = allocator_type());

C++11

template <class InputIterator>
deque (InputIterator first, InputIterator last,
       const allocator_type& alloc = allocator_type());

Parameters

  • alloc − The storage allocator.

  • first − Input iterator to the initial position in range.

  • last − Input iterator to the final position in range.

Return value

Constructor never returns value.

Exceptions

If range specified by first and last is not valid then result is undefined.

Time complexity

Linear i.e. O(n)

Example

The following example shows the usage of std::deque::deque() constructor.

#include <iostream>
#include <deque>

using namespace std;

int main(void) {

   deque<int> d1 = {1, 2, 3, 4, 5};
   deque<int> d2(d1.begin(), d1.begin() + 3);

   cout << "Contents of deque are" << endl;

   for (int i = 0; i < d2.size(); ++i)
      cout << d2[i] << endl;

   return 0;
}

Let us compile and run the above program, this will produce the following result −

Contents of deque are
1
2
3
deque.htm
Advertisements