A<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://www.cppe.ru/index.php?action=history&amp;feed=atom&amp;title=C%2B%2B_Tutorial%2Fdeque%2Fdeque</id>
		<title>C++ Tutorial/deque/deque - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://www.cppe.ru/index.php?action=history&amp;feed=atom&amp;title=C%2B%2B_Tutorial%2Fdeque%2Fdeque"/>
		<link rel="alternate" type="text/html" href="http://www.cppe.ru/index.php?title=C%2B%2B_Tutorial/deque/deque&amp;action=history"/>
		<updated>2026-04-17T17:59:22Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://www.cppe.ru/index.php?title=C%2B%2B_Tutorial/deque/deque&amp;diff=2521&amp;oldid=prev</id>
		<title> в 14:21, 25 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://www.cppe.ru/index.php?title=C%2B%2B_Tutorial/deque/deque&amp;diff=2521&amp;oldid=prev"/>
				<updated>2010-05-25T14:21:17Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 14:21, 25 мая 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
			</entry>

	<entry>
		<id>http://www.cppe.ru/index.php?title=C%2B%2B_Tutorial/deque/deque&amp;diff=2522&amp;oldid=prev</id>
		<title>Admin: 1 версия:&amp;#32;Импорт контента...</title>
		<link rel="alternate" type="text/html" href="http://www.cppe.ru/index.php?title=C%2B%2B_Tutorial/deque/deque&amp;diff=2522&amp;oldid=prev"/>
				<updated>2010-05-25T10:29:54Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия: Импорт контента...&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==Combine insert and end to add elements to a deque==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;cassert&amp;gt;&lt;br /&gt;
#include &amp;lt;algorithm&amp;gt;&lt;br /&gt;
#include &amp;lt;string&amp;gt;&lt;br /&gt;
#include &amp;lt;list&amp;gt;&lt;br /&gt;
#include &amp;lt;deque&amp;gt;&lt;br /&gt;
#include &amp;lt;vector&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
  deque&amp;lt;string&amp;gt; deq;&lt;br /&gt;
  deq.insert(deq.end(), &amp;quot;AAA&amp;quot;);&lt;br /&gt;
  deq.insert(deq.end(), &amp;quot;DDDDDD&amp;quot;);&lt;br /&gt;
  deque&amp;lt;string&amp;gt;::iterator pos;&lt;br /&gt;
&lt;br /&gt;
  for (pos=deq.begin(); pos!=deq.end(); ++pos) {&lt;br /&gt;
        cout &amp;lt;&amp;lt; *pos &amp;lt;&amp;lt; &amp;quot; &amp;quot;;&lt;br /&gt;
  }&lt;br /&gt;
  return 0;&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;pre class=codeResult&amp;gt;AAA DDDDDD &amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Constructing a Container with Values from the Standard Input==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;#include &amp;lt;deque&amp;gt;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;iterator&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
template &amp;lt;class T&amp;gt;&lt;br /&gt;
void print(T&amp;amp; c){&lt;br /&gt;
   for( typename T::iterator i = c.begin(); i != c.end(); i++ ){&lt;br /&gt;
      std::cout &amp;lt;&amp;lt; *i &amp;lt;&amp;lt; endl;&lt;br /&gt;
   }&lt;br /&gt;
}&lt;br /&gt;
int main( )&lt;br /&gt;
{&lt;br /&gt;
   deque&amp;lt;float&amp;gt; data( (istream_iterator&amp;lt;float&amp;gt;( cin )),istream_iterator&amp;lt;float&amp;gt;() );&lt;br /&gt;
   print( data );&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==create a deque==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
using std::cout;&lt;br /&gt;
using std::endl;&lt;br /&gt;
#include &amp;lt;deque&amp;gt;     // deque class-template definition&lt;br /&gt;
#include &amp;lt;algorithm&amp;gt; // copy algorithm&lt;br /&gt;
#include &amp;lt;iterator&amp;gt;  // ostream_iterator&lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
   std::deque&amp;lt; double &amp;gt; values; // create deque of doubles&lt;br /&gt;
   std::ostream_iterator&amp;lt; double &amp;gt; output( cout, &amp;quot; &amp;quot; );&lt;br /&gt;
   // insert elements in values&lt;br /&gt;
   values.push_front( 2.2 );&lt;br /&gt;
   values.push_front( 3.5 );&lt;br /&gt;
   values.push_back( 1.1 );&lt;br /&gt;
   cout &amp;lt;&amp;lt; &amp;quot;values contains: &amp;quot;;&lt;br /&gt;
   std::copy( values.begin(), values.end(), output );&lt;br /&gt;
   values.pop_front(); // remove first element&lt;br /&gt;
   cout &amp;lt;&amp;lt; &amp;quot;\nAfter pop_front, values contains: &amp;quot;;&lt;br /&gt;
   std::copy( values.begin(), values.end(), output );&lt;br /&gt;
   cout &amp;lt;&amp;lt; endl;&lt;br /&gt;
   return 0;&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;pre class=codeResult&amp;gt;values contains: 3.5 2.2 1.1&lt;br /&gt;
After pop_front, values contains: 2.2 1.1&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Create another deque that contains a subrange of dq==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;deque&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
void show(const char *msg, deque&amp;lt;int&amp;gt; q);&lt;br /&gt;
int main() {&lt;br /&gt;
  deque&amp;lt;int&amp;gt; dq(10);&lt;br /&gt;
  for(unsigned i=0; i &amp;lt; dq.size(); ++i) dq[i] = i*i;&lt;br /&gt;
  show(&amp;quot;Contents of dq: &amp;quot;, dq);&lt;br /&gt;
  // Create another deque that contains a subrange of dq.&lt;br /&gt;
  deque&amp;lt;int&amp;gt; dq2(dq.begin()+2, dq.end()-4);&lt;br /&gt;
  // Display the contents of dq2 by using an iterator.&lt;br /&gt;
  show(&amp;quot;dq2 contains a subrange of dq: &amp;quot;, dq2);&lt;br /&gt;
  cout &amp;lt;&amp;lt; endl;&lt;br /&gt;
  return 0;&lt;br /&gt;
}&lt;br /&gt;
// Display the contents of a deque&amp;lt;int&amp;gt;.&lt;br /&gt;
void show(const char *msg, deque&amp;lt;int&amp;gt; q) {&lt;br /&gt;
  cout &amp;lt;&amp;lt; msg;&lt;br /&gt;
  for(unsigned i=0; i &amp;lt; q.size(); ++i)&lt;br /&gt;
    cout &amp;lt;&amp;lt; q[i] &amp;lt;&amp;lt; &amp;quot; &amp;quot;;&lt;br /&gt;
  cout &amp;lt;&amp;lt; &amp;quot;\n&amp;quot;;&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Create your own stack based on deque==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;/* The following code example is taken from the book&lt;br /&gt;
 * &amp;quot;The C++ Standard Library - A Tutorial and Reference&amp;quot;&lt;br /&gt;
 * by Nicolai M. Josuttis, Addison-Wesley, 1999&lt;br /&gt;
 *&lt;br /&gt;
 * (C) Copyright Nicolai M. Josuttis 1999.&lt;br /&gt;
 * Permission to copy, use, modify, sell and distribute this software&lt;br /&gt;
 * is granted provided this copyright notice appears in all copies.&lt;br /&gt;
 * This software is provided &amp;quot;as is&amp;quot; without express or implied&lt;br /&gt;
 * warranty, and with no claim as to its suitability for any purpose.&lt;br /&gt;
 */&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;deque&amp;gt;&lt;br /&gt;
#include &amp;lt;exception&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
template &amp;lt;class T&amp;gt;&lt;br /&gt;
class Stack {&lt;br /&gt;
  protected:&lt;br /&gt;
    std::deque&amp;lt;T&amp;gt; c;        // container for the elements&lt;br /&gt;
  public:&lt;br /&gt;
    /* exception class for pop() and top() with empty stack&lt;br /&gt;
     */&lt;br /&gt;
    class ReadEmptyStack : public std::exception {&lt;br /&gt;
      public:&lt;br /&gt;
        virtual const char* what() const throw() {&lt;br /&gt;
            return &amp;quot;read empty stack&amp;quot;;&lt;br /&gt;
        }&lt;br /&gt;
    };&lt;br /&gt;
  &lt;br /&gt;
    // number of elements&lt;br /&gt;
    typename std::deque&amp;lt;T&amp;gt;::size_type size() const {&lt;br /&gt;
        return c.size();&lt;br /&gt;
    }&lt;br /&gt;
    // is stack empty?&lt;br /&gt;
    bool empty() const {&lt;br /&gt;
        return c.empty();&lt;br /&gt;
    }&lt;br /&gt;
    // push element into the stack&lt;br /&gt;
    void push (const T&amp;amp; elem) {&lt;br /&gt;
        c.push_back(elem);&lt;br /&gt;
    }&lt;br /&gt;
    // pop element out of the stack and return its value&lt;br /&gt;
    T pop () {&lt;br /&gt;
        if (c.empty()) {&lt;br /&gt;
            throw ReadEmptyStack();&lt;br /&gt;
        }&lt;br /&gt;
        T elem(c.back());&lt;br /&gt;
        c.pop_back();&lt;br /&gt;
        return elem;&lt;br /&gt;
    }&lt;br /&gt;
    // return value of next element&lt;br /&gt;
    T&amp;amp; top () {&lt;br /&gt;
        if (c.empty()) {&lt;br /&gt;
            throw ReadEmptyStack();&lt;br /&gt;
        }&lt;br /&gt;
        return c.back();&lt;br /&gt;
    }&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
   try {&lt;br /&gt;
      Stack&amp;lt;int&amp;gt; st;&lt;br /&gt;
      // push three elements into the stack&lt;br /&gt;
      st.push(1);&lt;br /&gt;
      st.push(2);&lt;br /&gt;
      st.push(3);&lt;br /&gt;
      // pop and print two elements from the stack&lt;br /&gt;
      cout &amp;lt;&amp;lt; st.pop() &amp;lt;&amp;lt; &amp;quot; &amp;quot;;&lt;br /&gt;
      cout &amp;lt;&amp;lt; st.pop() &amp;lt;&amp;lt; &amp;quot; &amp;quot;;&lt;br /&gt;
      // modify top element&lt;br /&gt;
      st.top() = 77;&lt;br /&gt;
      // push two new elements&lt;br /&gt;
      st.push(4);&lt;br /&gt;
      st.push(5);&lt;br /&gt;
      // pop one element without processing it&lt;br /&gt;
      st.pop();&lt;br /&gt;
      /* pop and print three elements&lt;br /&gt;
       * - ERROR: one element too many&lt;br /&gt;
       */&lt;br /&gt;
      cout &amp;lt;&amp;lt; st.pop() &amp;lt;&amp;lt; &amp;quot; &amp;quot;;&lt;br /&gt;
      cout &amp;lt;&amp;lt; st.pop() &amp;lt;&amp;lt; endl;&lt;br /&gt;
      cout &amp;lt;&amp;lt; st.pop() &amp;lt;&amp;lt; endl;&lt;br /&gt;
   }&lt;br /&gt;
   catch (const exception&amp;amp; e) {&lt;br /&gt;
      cerr &amp;lt;&amp;lt; &amp;quot;EXCEPTION: &amp;quot; &amp;lt;&amp;lt; e.what() &amp;lt;&amp;lt; endl;&lt;br /&gt;
   }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;pre class=codeResult&amp;gt;3 2 4 77&lt;br /&gt;
EXCEPTION: read empty stack&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==deque for char type==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;#include &amp;lt;deque&amp;gt;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
&lt;br /&gt;
using namespace std;&lt;br /&gt;
typedef deque&amp;lt;char&amp;gt; CHARDEQUE;&lt;br /&gt;
void print_contents(CHARDEQUE deque, char*);&lt;br /&gt;
int main(void)&lt;br /&gt;
 {&lt;br /&gt;
   CHARDEQUE  a(3, &amp;quot;A&amp;quot;);    &lt;br /&gt;
   CHARDEQUE  b(4, &amp;quot;B&amp;quot;);    &lt;br /&gt;
   print_contents(a, &amp;quot;a&amp;quot;);    &lt;br /&gt;
   print_contents(b, &amp;quot;b&amp;quot;);&lt;br /&gt;
   a.swap(b);        &lt;br /&gt;
   print_contents(a, &amp;quot;a&amp;quot;);&lt;br /&gt;
   print_contents(b, &amp;quot;b&amp;quot;);&lt;br /&gt;
   a.swap(b);        &lt;br /&gt;
   print_contents(a, &amp;quot;a&amp;quot;);&lt;br /&gt;
   print_contents(b, &amp;quot;b&amp;quot;);&lt;br /&gt;
   a.assign(b.begin(),b.end());  &lt;br /&gt;
   print_contents(a, &amp;quot;a&amp;quot;);&lt;br /&gt;
   a.assign(b.begin(),b.begin()+2);  &lt;br /&gt;
   print_contents(a, &amp;quot;a&amp;quot;);&lt;br /&gt;
   a.assign(3, &amp;quot;Z&amp;quot;);      &lt;br /&gt;
   print_contents(a, &amp;quot;a&amp;quot;);&lt;br /&gt;
 }&lt;br /&gt;
void print_contents(CHARDEQUE deque, char *name){&lt;br /&gt;
   CHARDEQUE::iterator pdeque;&lt;br /&gt;
   cout &amp;lt;&amp;lt; &amp;quot;The contents of &amp;quot; &amp;lt;&amp;lt; name &amp;lt;&amp;lt; &amp;quot; : &amp;quot;;&lt;br /&gt;
   for(pdeque = deque.begin(); pdeque != deque.end(); pdeque++)&lt;br /&gt;
     cout &amp;lt;&amp;lt; *pdeque &amp;lt;&amp;lt; &amp;quot; &amp;quot;;&lt;br /&gt;
   cout&amp;lt;&amp;lt; endl;&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==deque.push_front( value )==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
using std::cout;&lt;br /&gt;
using std::endl;&lt;br /&gt;
#include &amp;lt;deque&amp;gt;     // deque class-template definition&lt;br /&gt;
#include &amp;lt;algorithm&amp;gt; // copy algorithm&lt;br /&gt;
#include &amp;lt;iterator&amp;gt;  // ostream_iterator&lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
   std::deque&amp;lt; double &amp;gt; values; // create deque of doubles&lt;br /&gt;
   std::ostream_iterator&amp;lt; double &amp;gt; output( cout, &amp;quot; &amp;quot; );&lt;br /&gt;
   values.push_front( 2.2 );&lt;br /&gt;
   values.push_front( 3.5 );&lt;br /&gt;
   values.push_back( 1.1 );&lt;br /&gt;
   cout &amp;lt;&amp;lt; &amp;quot;values contains: &amp;quot;;&lt;br /&gt;
   // use subscript operator to obtain elements of values&lt;br /&gt;
   for ( int i = 0; i &amp;lt; values.size(); i++ )&lt;br /&gt;
      cout &amp;lt;&amp;lt; values[ i ] &amp;lt;&amp;lt; &amp;quot; &amp;quot;;&lt;br /&gt;
   cout &amp;lt;&amp;lt; endl;&lt;br /&gt;
   return 0;&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;pre class=codeResult&amp;gt;values contains: 3.5 2.2 1.1&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Initialize deque with 26 copies of the letter x==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;cassert&amp;gt;&lt;br /&gt;
#include &amp;lt;list&amp;gt;&lt;br /&gt;
#include &amp;lt;deque&amp;gt;&lt;br /&gt;
#include &amp;lt;algorithm&amp;gt;  // For merge&lt;br /&gt;
using namespace std;&lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
  // Initialize deque1 with 26 copies of the letter x:&lt;br /&gt;
  deque&amp;lt;char&amp;gt; deque1(26, &amp;quot;x&amp;quot;);&lt;br /&gt;
  deque&amp;lt;char&amp;gt;::iterator i;&lt;br /&gt;
  cout.precision(10);&lt;br /&gt;
  for (i = deque1.begin(); i != deque1.end(); ++i)&lt;br /&gt;
    cout &amp;lt;&amp;lt; *i &amp;lt;&amp;lt; endl;&lt;br /&gt;
  return 0;&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;pre class=codeResult&amp;gt;x&lt;br /&gt;
x&lt;br /&gt;
x&lt;br /&gt;
x&lt;br /&gt;
x&lt;br /&gt;
x&lt;br /&gt;
x&lt;br /&gt;
x&lt;br /&gt;
x&lt;br /&gt;
x&lt;br /&gt;
x&lt;br /&gt;
x&lt;br /&gt;
x&lt;br /&gt;
x&lt;br /&gt;
x&lt;br /&gt;
x&lt;br /&gt;
x&lt;br /&gt;
x&lt;br /&gt;
x&lt;br /&gt;
x&lt;br /&gt;
x&lt;br /&gt;
x&lt;br /&gt;
x&lt;br /&gt;
x&lt;br /&gt;
x&lt;br /&gt;
x&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Use generic deque to store chars==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;cassert&amp;gt;&lt;br /&gt;
#include &amp;lt;deque&amp;gt;&lt;br /&gt;
#include &amp;lt;algorithm&amp;gt;  // For find&lt;br /&gt;
using namespace std;&lt;br /&gt;
&lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
  char x[5] = {&amp;quot;a&amp;quot;, &amp;quot;r&amp;quot;, &amp;quot;e&amp;quot;, &amp;quot;q&amp;quot;, &amp;quot;t&amp;quot;};&lt;br /&gt;
  deque&amp;lt;char&amp;gt; deque1(&amp;amp;x[0], &amp;amp;x[5]);&lt;br /&gt;
  // Search for the first occurrence of the letter e:&lt;br /&gt;
  deque&amp;lt;char&amp;gt;::iterator where = find(deque1.begin(), deque1.end(), &amp;quot;e&amp;quot;);&lt;br /&gt;
  assert (*where == &amp;quot;e&amp;quot; );&lt;br /&gt;
  cout &amp;lt;&amp;lt; &amp;quot;Ok.&amp;quot; &amp;lt;&amp;lt; endl;&lt;br /&gt;
  return 0;&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;pre class=codeResult&amp;gt;Ok.&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Use generic deque to store integers==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;cassert&amp;gt;&lt;br /&gt;
#include &amp;lt;deque&amp;gt;&lt;br /&gt;
#include &amp;lt;algorithm&amp;gt;  // For find&lt;br /&gt;
using namespace std;&lt;br /&gt;
&lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
  int x[5] = {1, 2, 3, 4, 5};&lt;br /&gt;
  deque&amp;lt;int&amp;gt; deque1(&amp;amp;x[0], &amp;amp;x[5]);&lt;br /&gt;
  // Search for the first occurrence of the letter e:&lt;br /&gt;
  deque&amp;lt;int&amp;gt;::iterator where = find(deque1.begin(), deque1.end(), 1);&lt;br /&gt;
  cout &amp;lt;&amp;lt; *where &amp;lt;&amp;lt; endl;&lt;br /&gt;
  return 0;&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;pre class=codeResult&amp;gt;1&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Use generic deque to store strings==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;cassert&amp;gt;&lt;br /&gt;
#include &amp;lt;deque&amp;gt;&lt;br /&gt;
#include &amp;lt;algorithm&amp;gt;  // For find&lt;br /&gt;
using namespace std;&lt;br /&gt;
&lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
  string x[5] = {&amp;quot;1234&amp;quot;, &amp;quot;2345&amp;quot;, &amp;quot;3456&amp;quot;,&amp;quot;4567&amp;quot;, &amp;quot;5678&amp;quot;};&lt;br /&gt;
  deque&amp;lt;string&amp;gt; deque1(&amp;amp;x[0], &amp;amp;x[5]);&lt;br /&gt;
  // Search for the first occurrence of the letter e:&lt;br /&gt;
  deque&amp;lt;string&amp;gt;::iterator i;&lt;br /&gt;
  cout.precision(10);&lt;br /&gt;
  for (i = deque1.begin(); i != deque1.end(); ++i)&lt;br /&gt;
    cout &amp;lt;&amp;lt; *i &amp;lt;&amp;lt; endl;&lt;br /&gt;
  return 0;&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;pre class=codeResult&amp;gt;1234&lt;br /&gt;
2345&lt;br /&gt;
3456&lt;br /&gt;
4567&lt;br /&gt;
5678&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Use std::copy to print out all elements in a deque==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
using std::cout;&lt;br /&gt;
using std::endl;&lt;br /&gt;
#include &amp;lt;deque&amp;gt;     // deque class-template definition&lt;br /&gt;
#include &amp;lt;algorithm&amp;gt; // copy algorithm&lt;br /&gt;
#include &amp;lt;iterator&amp;gt;  // ostream_iterator&lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
   std::deque&amp;lt; double &amp;gt; values; // create deque of doubles&lt;br /&gt;
   std::ostream_iterator&amp;lt; double &amp;gt; output( cout, &amp;quot; &amp;quot; );&lt;br /&gt;
   // insert elements in values&lt;br /&gt;
   values.push_front( 2.2 );&lt;br /&gt;
   values.push_front( 3.5 );&lt;br /&gt;
   values.push_back( 1.1 );&lt;br /&gt;
   cout &amp;lt;&amp;lt; &amp;quot;values contains: &amp;quot;;&lt;br /&gt;
   std::copy( values.begin(), values.end(), output );&lt;br /&gt;
   values.pop_front(); // remove first element&lt;br /&gt;
   cout &amp;lt;&amp;lt; &amp;quot;\nAfter pop_front, values contains: &amp;quot;;&lt;br /&gt;
   std::copy( values.begin(), values.end(), output );&lt;br /&gt;
   cout &amp;lt;&amp;lt; endl;&lt;br /&gt;
   return 0;&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;pre class=codeResult&amp;gt;values contains: 3.5 2.2 1.1&lt;br /&gt;
After pop_front, values contains: 2.2 1.1&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>