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%2Fvector%2Fvector_back</id>
		<title>C++ Tutorial/vector/vector back - История изменений</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%2Fvector%2Fvector_back"/>
		<link rel="alternate" type="text/html" href="http://cppe.ru/index.php?title=C%2B%2B_Tutorial/vector/vector_back&amp;action=history"/>
		<updated>2026-04-10T20:29:44Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://cppe.ru/index.php?title=C%2B%2B_Tutorial/vector/vector_back&amp;diff=2185&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/vector/vector_back&amp;diff=2185&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/vector/vector_back&amp;diff=2186&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/vector/vector_back&amp;diff=2186&amp;oldid=prev"/>
				<updated>2010-05-25T10:29:05Z</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;==Accessing the Back of a Vector==&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;vector&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
template &amp;lt;class ForwIter&amp;gt;&lt;br /&gt;
void print(ForwIter first, ForwIter last, const char* title)&lt;br /&gt;
{&lt;br /&gt;
   cout &amp;lt;&amp;lt; title &amp;lt;&amp;lt; endl;&lt;br /&gt;
   while ( first != last)&lt;br /&gt;
      cout &amp;lt;&amp;lt; *first++ &amp;lt;&amp;lt; &amp;quot;\t&amp;quot;;&lt;br /&gt;
   cout &amp;lt;&amp;lt; endl;&lt;br /&gt;
}&lt;br /&gt;
class Card&lt;br /&gt;
{&lt;br /&gt;
   public:&lt;br /&gt;
   enum Suit { spades, clubs, hearts, diamonds };&lt;br /&gt;
   Card( int value = 1, Suit suit = spades );&lt;br /&gt;
   // value - 1 = Ace, 2-10, 11 = Jack, 12 = Queen, 13 = King&lt;br /&gt;
   int suit() const;&lt;br /&gt;
   int value() const;&lt;br /&gt;
   private:&lt;br /&gt;
   int value_;&lt;br /&gt;
   Suit suit_;&lt;br /&gt;
};&lt;br /&gt;
inline&lt;br /&gt;
Card::Card( int value, Suit suit )&lt;br /&gt;
   : value_( value ), suit_( suit )&lt;br /&gt;
{} // empty&lt;br /&gt;
inline&lt;br /&gt;
int Card::suit() const&lt;br /&gt;
{ return suit_; }&lt;br /&gt;
inline&lt;br /&gt;
int Card::value() const&lt;br /&gt;
{ return value_; }&lt;br /&gt;
// global function&lt;br /&gt;
ostream&amp;amp; operator&amp;lt;&amp;lt;( ostream&amp;amp; out, const Card&amp;amp; card )&lt;br /&gt;
{&lt;br /&gt;
   if( card.value() &amp;gt;= 2 &amp;amp;&amp;amp; card.value() &amp;lt;= 10 )&lt;br /&gt;
      out &amp;lt;&amp;lt; card.value();&lt;br /&gt;
   else&lt;br /&gt;
      switch( card.value() )&lt;br /&gt;
      {&lt;br /&gt;
         case  1: out &amp;lt;&amp;lt; &amp;quot;Ace&amp;quot;; break;&lt;br /&gt;
         case 11: out &amp;lt;&amp;lt; &amp;quot;Jack&amp;quot;; break;&lt;br /&gt;
         case 12: out &amp;lt;&amp;lt; &amp;quot;Queen&amp;quot;; break;&lt;br /&gt;
         case 13: out &amp;lt;&amp;lt; &amp;quot;King&amp;quot;; break;&lt;br /&gt;
         default: out &amp;lt;&amp;lt; &amp;quot;Unknown value&amp;quot;; break;&lt;br /&gt;
      };&lt;br /&gt;
   out &amp;lt;&amp;lt; &amp;quot; of &amp;quot;;&lt;br /&gt;
   switch( card.suit() )&lt;br /&gt;
   {&lt;br /&gt;
      case Card::spades:   out &amp;lt;&amp;lt; &amp;quot;spades&amp;quot;; break;&lt;br /&gt;
      case Card::clubs:    out &amp;lt;&amp;lt; &amp;quot;clubs&amp;quot;; break;&lt;br /&gt;
      case Card::diamonds: out &amp;lt;&amp;lt; &amp;quot;diamonds&amp;quot;; break;&lt;br /&gt;
      case Card::hearts:   out &amp;lt;&amp;lt; &amp;quot;hearts&amp;quot;; break;&lt;br /&gt;
      default:             out &amp;lt;&amp;lt; &amp;quot;unknown suit&amp;quot;; break;&lt;br /&gt;
   }&lt;br /&gt;
   return out;&lt;br /&gt;
}&lt;br /&gt;
int main( )&lt;br /&gt;
{&lt;br /&gt;
   const int num_players = 2;&lt;br /&gt;
   vector&amp;lt; list&amp;lt;Card&amp;gt; &amp;gt; hands( num_players );&lt;br /&gt;
   // deal first player a hand&lt;br /&gt;
   hands[0].push_front( Card( 12, Card::hearts ) );&lt;br /&gt;
   hands[0].push_front( Card( 1,  Card::spades ) );&lt;br /&gt;
   hands[0].push_front( Card( 4,  Card::spades ) );&lt;br /&gt;
   // deal second player a hand&lt;br /&gt;
   hands[1].push_front( Card( 13, Card::diamonds ) );&lt;br /&gt;
   hands[1].push_front( Card( 12, Card::clubs ) );&lt;br /&gt;
   hands[1].push_front( Card( 2,  Card::hearts ) );&lt;br /&gt;
   const int num_plays = 3;&lt;br /&gt;
   bool discard[num_players][num_plays] = { { true, true, false },&lt;br /&gt;
                                            { true, false, false } };&lt;br /&gt;
   vector&amp;lt;Card&amp;gt; discard_pile;&lt;br /&gt;
   // simulate card play&lt;br /&gt;
   for( int i = 0; i &amp;lt; num_plays; ++i )&lt;br /&gt;
      for( int j = 0; j &amp;lt; num_players; ++j )&lt;br /&gt;
         // if discard and hand not empty...&lt;br /&gt;
         if( discard[j][i] &amp;amp;&amp;amp; !hands[j].empty() )&lt;br /&gt;
         {&lt;br /&gt;
            discard_pile.push_back( hands[j].front() );&lt;br /&gt;
            hands[j].pop_front();&lt;br /&gt;
            cout &amp;lt;&amp;lt; &amp;quot;Player &amp;quot; &amp;lt;&amp;lt; (j+1) &amp;lt;&amp;lt; &amp;quot; discarded a &amp;quot;&lt;br /&gt;
               &amp;lt;&amp;lt; discard_pile.back() &amp;lt;&amp;lt; endl;&lt;br /&gt;
         }// if pick up and discard pile not empty...&lt;br /&gt;
         else if( !discard[j][i] &amp;amp;&amp;amp; !discard_pile.empty() )&lt;br /&gt;
         {&lt;br /&gt;
            hands[j].push_back( discard_pile.back() );&lt;br /&gt;
            cout &amp;lt;&amp;lt; &amp;quot;Player &amp;quot; &amp;lt;&amp;lt; (j+1) &amp;lt;&amp;lt; &amp;quot; picked up a &amp;quot;&lt;br /&gt;
               &amp;lt;&amp;lt; discard_pile.back() &amp;lt;&amp;lt; endl;&lt;br /&gt;
            discard_pile.pop_back();&lt;br /&gt;
         }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Demonstrating the STL vector back and pop_back operations==&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;vector&amp;gt;&lt;br /&gt;
#include &amp;lt;string&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
  string s(&amp;quot;abcdefghij&amp;quot;);&lt;br /&gt;
  vector&amp;lt;char&amp;gt; vector1(s.begin(), s.end());&lt;br /&gt;
  while (vector1.size() &amp;gt; 0) {&lt;br /&gt;
    cout &amp;lt;&amp;lt; vector1.back();&lt;br /&gt;
    vector1.pop_back();&lt;br /&gt;
  }&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;jihgfedcba&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Get the last element in the vector==&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;vector&amp;gt;    // vector 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 iterator&lt;br /&gt;
#include &amp;lt;stdexcept&amp;gt; // out_of_range exception&lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
   int array[ 6 ] = { 1, 2, 3, 4, 5, 6 };&lt;br /&gt;
   std::vector&amp;lt; int &amp;gt; integers( array, array + 6 );&lt;br /&gt;
   std::ostream_iterator&amp;lt; int &amp;gt; output( cout, &amp;quot; &amp;quot; );&lt;br /&gt;
   integers.push_back( 2 );&lt;br /&gt;
   integers.push_back( 3 );&lt;br /&gt;
   integers.push_back( 4 );&lt;br /&gt;
   cout &amp;lt;&amp;lt; &amp;quot;Vector integers contains: &amp;quot;;&lt;br /&gt;
   std::copy( integers.begin(), integers.end(), output );&lt;br /&gt;
   cout &amp;lt;&amp;lt; &amp;quot;\nLast element of integers: &amp;quot; &amp;lt;&amp;lt; integers.back();&lt;br /&gt;
   return 0;&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;pre class=codeResult&amp;gt;Vector integers contains: 1 2 3 4 5 6 2 3 4&lt;br /&gt;
Last element of integers: 4&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>