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

	<entry>
		<id>http://cppe.ru/index.php?title=C%2B%2B/Deque/deque&amp;diff=1805&amp;oldid=prev</id>
		<title> в 14:21, 25 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://cppe.ru/index.php?title=C%2B%2B/Deque/deque&amp;diff=1805&amp;oldid=prev"/>
				<updated>2010-05-25T14:21:06Z</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://cppe.ru/index.php?title=C%2B%2B/Deque/deque&amp;diff=1806&amp;oldid=prev</id>
		<title>Admin: 1 версия:&amp;#32;Импорт контента...</title>
		<link rel="alternate" type="text/html" href="http://cppe.ru/index.php?title=C%2B%2B/Deque/deque&amp;diff=1806&amp;oldid=prev"/>
				<updated>2010-05-25T10:27:55Z</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;  &lt;br /&gt;
 &lt;br /&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;
}&lt;br /&gt;
 /* &lt;br /&gt;
AAA DDDDDD&lt;br /&gt;
 */       &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&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;  &lt;br /&gt;
 &lt;br /&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;
}&lt;br /&gt;
 /* &lt;br /&gt;
values contains: 3.5 2.2 1.1&lt;br /&gt;
After pop_front, values contains: 2.2 1.1&lt;br /&gt;
 */       &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&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;  &lt;br /&gt;
 &lt;br /&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;
}&lt;br /&gt;
/* &lt;br /&gt;
3 2 4 77&lt;br /&gt;
EXCEPTION: read empty stack&lt;br /&gt;
 */        &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==deque.push_back( value )==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;  &lt;br /&gt;
 &lt;br /&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;
}&lt;br /&gt;
/* &lt;br /&gt;
values contains: 3.5 2.2 1.1&lt;br /&gt;
 */        &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&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;  &lt;br /&gt;
 &lt;br /&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;
}&lt;br /&gt;
/* &lt;br /&gt;
values contains: 3.5 2.2 1.1&lt;br /&gt;
 */        &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&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;  &lt;br /&gt;
 &lt;br /&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;
}&lt;br /&gt;
/* &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&lt;br /&gt;
x&lt;br /&gt;
 */        &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Save transformed data from vector to deque (Vector1 + Vector2 = Result (in Deque))==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&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;vector&amp;gt;&lt;br /&gt;
#include &amp;lt;deque&amp;gt;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;functional&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
int main ()&lt;br /&gt;
{&lt;br /&gt;
    vector &amp;lt;int&amp;gt; v1, v2;&lt;br /&gt;
    for (int nNum = 0; nNum &amp;lt; 10; ++ nNum){&lt;br /&gt;
        v1.push_back (nNum);&lt;br /&gt;
        v2.push_back (10 - nNum);&lt;br /&gt;
    }&lt;br /&gt;
    deque &amp;lt;int&amp;gt; d (v1.size ());&lt;br /&gt;
    transform ( v1.begin (), v1.end (), v2.begin (), d.begin (), plus &amp;lt;int&amp;gt; () );&lt;br /&gt;
    &lt;br /&gt;
    for (size_t nIndex = 0; nIndex &amp;lt; v1.size (); ++ nIndex){&lt;br /&gt;
        cout &amp;lt;&amp;lt; nIndex &amp;lt;&amp;lt; &amp;quot;    \t &amp;quot; &amp;lt;&amp;lt; v1 [nIndex];&lt;br /&gt;
        cout &amp;lt;&amp;lt; v2 [nIndex]  &amp;lt;&amp;lt; &amp;quot; \t  =    &amp;quot;;&lt;br /&gt;
        cout &amp;lt;&amp;lt; d [nIndex] &amp;lt;&amp;lt; endl;&lt;br /&gt;
    }&lt;br /&gt;
    return 0;&lt;br /&gt;
}&lt;br /&gt;
  &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&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;  &lt;br /&gt;
 &lt;br /&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;
}&lt;br /&gt;
/* &lt;br /&gt;
Ok.&lt;br /&gt;
 */&lt;br /&gt;
        &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&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;  &lt;br /&gt;
 &lt;br /&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;
}&lt;br /&gt;
 &lt;br /&gt;
/* &lt;br /&gt;
1&lt;br /&gt;
 */&lt;br /&gt;
        &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&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;  &lt;br /&gt;
 &lt;br /&gt;
&lt;br /&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;
}&lt;br /&gt;
/* &lt;br /&gt;
1234&lt;br /&gt;
2345&lt;br /&gt;
3456&lt;br /&gt;
4567&lt;br /&gt;
5678&lt;br /&gt;
 */        &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&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;  &lt;br /&gt;
 &lt;br /&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;
}&lt;br /&gt;
/* &lt;br /&gt;
values contains: 3.5 2.2 1.1&lt;br /&gt;
After pop_front, values contains: 2.2 1.1&lt;br /&gt;
 */&lt;br /&gt;
        &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>