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_Tutorial%2Flist%2Flist</id>
		<title>C++ Tutorial/list/list - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://cppe.ru/index.php?action=history&amp;feed=atom&amp;title=C%2B%2B_Tutorial%2Flist%2Flist"/>
		<link rel="alternate" type="text/html" href="http://cppe.ru/index.php?title=C%2B%2B_Tutorial/list/list&amp;action=history"/>
		<updated>2026-04-10T23:26:50Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://cppe.ru/index.php?title=C%2B%2B_Tutorial/list/list&amp;diff=2373&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_Tutorial/list/list&amp;diff=2373&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://cppe.ru/index.php?title=C%2B%2B_Tutorial/list/list&amp;diff=2374&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_Tutorial/list/list&amp;diff=2374&amp;oldid=prev"/>
				<updated>2010-05-25T10:29:33Z</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;==Add elements in a multiset to a list==&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;string&amp;gt;&lt;br /&gt;
#include &amp;lt;set&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
  string s(&amp;quot;There is no distinctly native American criminal class&amp;quot;);&lt;br /&gt;
  list&amp;lt;char&amp;gt; list1(s.begin(), s.end());&lt;br /&gt;
  // Put the characters in list1 into multiset1:&lt;br /&gt;
  multiset&amp;lt;char&amp;gt; multiset1;&lt;br /&gt;
  list&amp;lt;char&amp;gt;::iterator i;&lt;br /&gt;
  for (i = list1.begin(); i != list1.end(); ++i)&lt;br /&gt;
    multiset1.insert(*i);&lt;br /&gt;
  // Put the characters in multiset1 into list2:&lt;br /&gt;
  list&amp;lt;char&amp;gt; list2;&lt;br /&gt;
  multiset&amp;lt;char&amp;gt;::iterator k;&lt;br /&gt;
  for (k = multiset1.begin(); k != multiset1.end(); ++k)&lt;br /&gt;
    list2.push_back(*k);&lt;br /&gt;
&lt;br /&gt;
  for (i = list2.begin(); i != list2.end(); ++i)&lt;br /&gt;
    cout &amp;lt;&amp;lt; *i;&lt;br /&gt;
  return 0;&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;pre class=codeResult&amp;gt;ATaaaaccccdeeeehiiiiiiilllmmnnnnnorrrsssstttvy&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Add elements in a set to a list==&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;string&amp;gt;&lt;br /&gt;
#include &amp;lt;set&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
  string s(&amp;quot;There is no distinctly native American criminal class&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
  list&amp;lt;char&amp;gt; list1(s.begin(), s.end());&lt;br /&gt;
  // Put the characters in list1 into set1:&lt;br /&gt;
  set&amp;lt;char&amp;gt; set1;&lt;br /&gt;
  list&amp;lt;char&amp;gt;::iterator i;&lt;br /&gt;
  for (i = list1.begin(); i != list1.end(); ++i)&lt;br /&gt;
    set1.insert(*i);&lt;br /&gt;
  set&amp;lt;char&amp;gt;::iterator j;&lt;br /&gt;
  list&amp;lt;char&amp;gt; list2;&lt;br /&gt;
  set&amp;lt;char&amp;gt;::iterator k;&lt;br /&gt;
  for (k = set1.begin(); k != set1.end(); ++k)&lt;br /&gt;
    list2.push_back(*k);&lt;br /&gt;
&lt;br /&gt;
  for (i = list2.begin(); i != list2.end(); ++i)&lt;br /&gt;
    cout &amp;lt;&amp;lt; *i;&lt;br /&gt;
  return 0;&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;pre class=codeResult&amp;gt;ATacdehilmnorstvy&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Constructing One Container from Another==&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;iomanip&amp;gt;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;list&amp;gt;&lt;br /&gt;
#include &amp;lt;vector&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;
   const int data[] = { 1, 1, 2, 3, 5 };&lt;br /&gt;
   list&amp;lt;int&amp;gt; original( data,data + sizeof( data ) / sizeof( data[0] ) );&lt;br /&gt;
   // make a vector from a list&lt;br /&gt;
   vector&amp;lt;int&amp;gt; vector_copy( original.begin(), original.end() );&lt;br /&gt;
   // make a list from a list&lt;br /&gt;
   list&amp;lt;int&amp;gt; list_copy( original );&lt;br /&gt;
   // make a list of floats from a list of ints&lt;br /&gt;
   list&amp;lt;float&amp;gt; list_float( original.begin(), original.end() );&lt;br /&gt;
   // show results&lt;br /&gt;
   print( original);&lt;br /&gt;
   print( vector_copy);&lt;br /&gt;
   print( list_copy);&lt;br /&gt;
   cout &amp;lt;&amp;lt; fixed &amp;lt;&amp;lt; setprecision( 1 );&lt;br /&gt;
   print( list_float );&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Four constructors of list==&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;list&amp;gt;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;string&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
typedef list&amp;lt;string&amp;gt; LISTSTR;&lt;br /&gt;
&lt;br /&gt;
int main(void)&lt;br /&gt;
 {&lt;br /&gt;
   LISTSTR::iterator i;&lt;br /&gt;
   LISTSTR test;                       // default constructor&lt;br /&gt;
   test.insert(test.end(), &amp;quot;one&amp;quot;);&lt;br /&gt;
   test.insert(test.end(), &amp;quot;two&amp;quot;);&lt;br /&gt;
   LISTSTR test2(test);                      // construct from another list&lt;br /&gt;
   LISTSTR test3(3, &amp;quot;three&amp;quot;);                // construct with three elements&lt;br /&gt;
                                  // containing the value &amp;quot;three&amp;quot; &lt;br /&gt;
   LISTSTR test4(++test3.begin(),test3.end());  // create from part of test3&lt;br /&gt;
   for (i =  test.begin(); i != test.end(); ++i)&lt;br /&gt;
     cout &amp;lt;&amp;lt; *i &amp;lt;&amp;lt; &amp;quot; &amp;quot;;&lt;br /&gt;
   cout &amp;lt;&amp;lt; endl;&lt;br /&gt;
   for (i =  test2.begin(); i != test2.end(); ++i)&lt;br /&gt;
     cout &amp;lt;&amp;lt; *i &amp;lt;&amp;lt; &amp;quot; &amp;quot;;&lt;br /&gt;
   cout &amp;lt;&amp;lt; endl;&lt;br /&gt;
   for (i =  test3.begin(); i != test3.end(); ++i)&lt;br /&gt;
     cout &amp;lt;&amp;lt; *i &amp;lt;&amp;lt; &amp;quot; &amp;quot;;&lt;br /&gt;
   cout &amp;lt;&amp;lt; endl;&lt;br /&gt;
   for (i =  test4.begin(); i != test4.end(); ++i)&lt;br /&gt;
     cout &amp;lt;&amp;lt; *i &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;
==Pass list to a function==&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;list&amp;gt;      // list 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;
template &amp;lt; typename T &amp;gt; void printList( const std::list&amp;lt; T &amp;gt; &amp;amp;listRef );&lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
   int array[ 4 ] = { 2, 6, 4, 8 };&lt;br /&gt;
   std::list&amp;lt; int &amp;gt; values;      // create list of ints&lt;br /&gt;
   std::list&amp;lt; int &amp;gt; otherValues; // create list of ints&lt;br /&gt;
   // insert items in values&lt;br /&gt;
   values.push_front( 1 );&lt;br /&gt;
   values.push_front( 2 );&lt;br /&gt;
   values.push_back( 4 );&lt;br /&gt;
   values.push_back( 3 );&lt;br /&gt;
   cout &amp;lt;&amp;lt; &amp;quot;values contains: &amp;quot;;&lt;br /&gt;
   printList( values );&lt;br /&gt;
   cout &amp;lt;&amp;lt; endl;&lt;br /&gt;
   return 0;&lt;br /&gt;
}&lt;br /&gt;
template &amp;lt; typename T &amp;gt; void printList( const std::list&amp;lt; T &amp;gt; &amp;amp;listRef )&lt;br /&gt;
{&lt;br /&gt;
    std::ostream_iterator&amp;lt; T &amp;gt; output( cout, &amp;quot; &amp;quot; );&lt;br /&gt;
    std::copy( listRef.begin(), listRef.end(), output );&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;pre class=codeResult&amp;gt;values contains: 2 1 4 3&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Store class objects in a list==&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;list&amp;gt;&lt;br /&gt;
#include &amp;lt;cstring&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
class MyClass {&lt;br /&gt;
  int a, b;&lt;br /&gt;
  int sum;&lt;br /&gt;
public:&lt;br /&gt;
  MyClass() {&lt;br /&gt;
      a = b = 0;&lt;br /&gt;
  }&lt;br /&gt;
  MyClass(int i, int j) {&lt;br /&gt;
    a = i;&lt;br /&gt;
    b = j;&lt;br /&gt;
    sum = a + b;&lt;br /&gt;
  }&lt;br /&gt;
  int getsum() {&lt;br /&gt;
      return sum;&lt;br /&gt;
  }&lt;br /&gt;
  friend bool operator&amp;lt;(const MyClass &amp;amp;o1,const MyClass &amp;amp;o2);&lt;br /&gt;
  friend bool operator&amp;gt;(const MyClass &amp;amp;o1,const MyClass &amp;amp;o2);&lt;br /&gt;
  friend bool operator==(const MyClass &amp;amp;o1,const MyClass &amp;amp;o2);&lt;br /&gt;
  friend bool operator!=(const MyClass &amp;amp;o1,const MyClass &amp;amp;o2);&lt;br /&gt;
};&lt;br /&gt;
bool operator&amp;lt;(const MyClass &amp;amp;o1, const MyClass &amp;amp;o2)&lt;br /&gt;
{&lt;br /&gt;
  return o1.sum &amp;lt; o2.sum;&lt;br /&gt;
}&lt;br /&gt;
bool operator&amp;gt;(const MyClass &amp;amp;o1, const MyClass &amp;amp;o2)&lt;br /&gt;
{&lt;br /&gt;
  return o1.sum &amp;gt; o2.sum;&lt;br /&gt;
}&lt;br /&gt;
bool operator==(const MyClass &amp;amp;o1, const MyClass &amp;amp;o2)&lt;br /&gt;
{&lt;br /&gt;
  return o1.sum == o2.sum;&lt;br /&gt;
}&lt;br /&gt;
bool operator!=(const MyClass &amp;amp;o1, const MyClass &amp;amp;o2)&lt;br /&gt;
{&lt;br /&gt;
  return o1.sum != o2.sum;&lt;br /&gt;
}&lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
  list&amp;lt;MyClass&amp;gt; lst1;&lt;br /&gt;
  for(int i=0; i&amp;lt;10; i++) lst1.push_back(MyClass(i, i));&lt;br /&gt;
  cout &amp;lt;&amp;lt; &amp;quot;First list: &amp;quot;;&lt;br /&gt;
  list&amp;lt;MyClass&amp;gt;::iterator p = lst1.begin();&lt;br /&gt;
  while(p != lst1.end()) {&lt;br /&gt;
    cout &amp;lt;&amp;lt; p-&amp;gt;getsum() &amp;lt;&amp;lt; &amp;quot; &amp;quot;;&lt;br /&gt;
    p++;&lt;br /&gt;
  }&lt;br /&gt;
  cout &amp;lt;&amp;lt; endl;&lt;br /&gt;
  // create a second list&lt;br /&gt;
  list&amp;lt;MyClass&amp;gt; lst2;&lt;br /&gt;
  for(int i=0; i&amp;lt;10; i++) lst2.push_back(MyClass(i*2, i*3));&lt;br /&gt;
  cout &amp;lt;&amp;lt; &amp;quot;Second list: &amp;quot;;&lt;br /&gt;
  p = lst2.begin();&lt;br /&gt;
  while(p != lst2.end()) {&lt;br /&gt;
    cout &amp;lt;&amp;lt; p-&amp;gt;getsum() &amp;lt;&amp;lt; &amp;quot; &amp;quot;;&lt;br /&gt;
    p++;&lt;br /&gt;
  }&lt;br /&gt;
  cout &amp;lt;&amp;lt; endl;&lt;br /&gt;
  lst1.merge(lst2);&lt;br /&gt;
  cout &amp;lt;&amp;lt; &amp;quot;Merged list: &amp;quot;;&lt;br /&gt;
  p = lst1.begin();&lt;br /&gt;
  while(p != lst1.end()) {&lt;br /&gt;
    cout &amp;lt;&amp;lt; p-&amp;gt;getsum() &amp;lt;&amp;lt; &amp;quot; &amp;quot;;&lt;br /&gt;
    p++;&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;First list: 0 2 4 6 8 10 12 14 16 18&lt;br /&gt;
Second list: 0 5 10 15 20 25 30 35 40 45&lt;br /&gt;
Merged list: 0 0 2 4 5 6 8 10 10 12 14 15 16 18 20 25 30 35 40 45&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Use generic list to create a list of 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;list&amp;gt;&lt;br /&gt;
#include &amp;lt;algorithm&amp;gt;  // For reverse&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;b&amp;quot;, &amp;quot;c&amp;quot;, &amp;quot;d&amp;quot;, &amp;quot;e&amp;quot;};&lt;br /&gt;
  list&amp;lt;char&amp;gt; list1(&amp;amp;x[0], &amp;amp;x[5]);&lt;br /&gt;
&lt;br /&gt;
  reverse(list1.begin(), list1.end());&lt;br /&gt;
  list&amp;lt;char&amp;gt;::iterator i;&lt;br /&gt;
  cout.precision(10);&lt;br /&gt;
  for (i = list1.begin(); i != list1.end(); ++i)&lt;br /&gt;
    cout &amp;lt;&amp;lt; *i &amp;lt;&amp;lt; endl;&lt;br /&gt;
  cout &amp;lt;&amp;lt; endl;&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;e&lt;br /&gt;
d&lt;br /&gt;
c&lt;br /&gt;
b&lt;br /&gt;
a&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Use generic list to create list of 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;list&amp;gt;&lt;br /&gt;
#include &amp;lt;algorithm&amp;gt;  // For reverse&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;asdf&amp;quot;, &amp;quot;1234&amp;quot;, &amp;quot;2345&amp;quot;, &amp;quot;6789&amp;quot;, &amp;quot;0000&amp;quot;};&lt;br /&gt;
  list&amp;lt;string&amp;gt; list1(&amp;amp;x[0], &amp;amp;x[5]);&lt;br /&gt;
&lt;br /&gt;
  reverse(list1.begin(), list1.end());&lt;br /&gt;
  list&amp;lt;string&amp;gt;::iterator i;&lt;br /&gt;
  cout.precision(10);&lt;br /&gt;
  for (i = list1.begin(); i != list1.end(); ++i)&lt;br /&gt;
    cout &amp;lt;&amp;lt; *i &amp;lt;&amp;lt; endl;&lt;br /&gt;
  cout &amp;lt;&amp;lt; endl;&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;0000&lt;br /&gt;
6789&lt;br /&gt;
2345&lt;br /&gt;
1234&lt;br /&gt;
asdf&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Uses ostream_iterator and copy algorithm to output list elements==&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;list&amp;gt;      // list 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;
template &amp;lt; typename T &amp;gt; void printList( const std::list&amp;lt; T &amp;gt; &amp;amp;listRef );&lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
   int array[ 4 ] = { 2, 6, 4, 8 };&lt;br /&gt;
   std::list&amp;lt; int &amp;gt; values;      // create list of ints&lt;br /&gt;
   std::list&amp;lt; int &amp;gt; otherValues; // create list of ints&lt;br /&gt;
   // insert items in values&lt;br /&gt;
   values.push_front( 1 );&lt;br /&gt;
   values.push_front( 2 );&lt;br /&gt;
   values.push_back( 4 );&lt;br /&gt;
   values.push_back( 3 );&lt;br /&gt;
   cout &amp;lt;&amp;lt; &amp;quot;values contains: &amp;quot;;&lt;br /&gt;
   printList( values );&lt;br /&gt;
   cout &amp;lt;&amp;lt; endl;&lt;br /&gt;
   return 0;&lt;br /&gt;
}&lt;br /&gt;
template &amp;lt; typename T &amp;gt; void printList( const std::list&amp;lt; T &amp;gt; &amp;amp;listRef )&lt;br /&gt;
{&lt;br /&gt;
    std::ostream_iterator&amp;lt; T &amp;gt; output( cout, &amp;quot; &amp;quot; );&lt;br /&gt;
    std::copy( listRef.begin(), listRef.end(), output );&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;pre class=codeResult&amp;gt;values contains: 2 1 4 3&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Use std::copy to print all elements in a list==&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;list&amp;gt;      // list 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;
   int array[ 4 ] = { 2, 6, 4, 8 };&lt;br /&gt;
   std::list&amp;lt; int &amp;gt; values;      // create list of ints&lt;br /&gt;
   std::list&amp;lt; int &amp;gt; otherValues; // create list of ints&lt;br /&gt;
   // insert items in values&lt;br /&gt;
   values.push_front( 1 );&lt;br /&gt;
   values.push_front( 2 );&lt;br /&gt;
   values.push_back( 4 );&lt;br /&gt;
   values.push_back( 3 );&lt;br /&gt;
   cout &amp;lt;&amp;lt; &amp;quot;values contains: &amp;quot;;&lt;br /&gt;
   std::ostream_iterator&amp;lt; int &amp;gt; output( cout, &amp;quot; &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: 2 1 4 3&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>