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%2FMap_Multimap%2Fpair</id>
		<title>C++/Map Multimap/pair - История изменений</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%2FMap_Multimap%2Fpair"/>
		<link rel="alternate" type="text/html" href="http://www.cppe.ru/index.php?title=C%2B%2B/Map_Multimap/pair&amp;action=history"/>
		<updated>2026-04-18T18:05:06Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://www.cppe.ru/index.php?title=C%2B%2B/Map_Multimap/pair&amp;diff=1462&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/Map_Multimap/pair&amp;diff=1462&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://www.cppe.ru/index.php?title=C%2B%2B/Map_Multimap/pair&amp;diff=1463&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/Map_Multimap/pair&amp;diff=1463&amp;oldid=prev"/>
				<updated>2010-05-25T10:25:53Z</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;==Computing the Median 1==&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;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;map&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;
inline&lt;br /&gt;
bool second_less( const pair&amp;lt;int,int&amp;gt; a, const pair&amp;lt;int,int&amp;gt; b )&lt;br /&gt;
{  &lt;br /&gt;
   return a.second &amp;lt; b.second;   &lt;br /&gt;
}&lt;br /&gt;
int main( )&lt;br /&gt;
{&lt;br /&gt;
    const int len = 15;&lt;br /&gt;
    const int a[len] = { 9, 2, 3, 3, 7, 5, 7, 7, 4, 10, 5, 6, 7, 4, 7 };&lt;br /&gt;
    vector&amp;lt;int&amp;gt; v( a, a + len );&lt;br /&gt;
    vector&amp;lt;int&amp;gt;::iterator v_end = v.end();&lt;br /&gt;
    print( v );&lt;br /&gt;
    &lt;br /&gt;
    map&amp;lt;int,int&amp;gt; frequency;&lt;br /&gt;
    for( vector&amp;lt;int&amp;gt;::iterator i = v.begin(); i != v_end;++i )&lt;br /&gt;
        ++frequency[*i];&lt;br /&gt;
    &lt;br /&gt;
    pair&amp;lt;int,int&amp;gt; mode_pair = *max_element( frequency.begin(),frequency.end(), second_less );&lt;br /&gt;
    &lt;br /&gt;
    cout &amp;lt;&amp;lt; &amp;quot;Mode by method 1: &amp;quot; &amp;lt;&amp;lt; mode_pair.first;&lt;br /&gt;
    &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;
==for each basic==&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;map&amp;gt;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
void printPair(const pair&amp;lt;int, int&amp;gt;&amp;amp; elem)&lt;br /&gt;
{&lt;br /&gt;
  cout &amp;lt;&amp;lt; elem.first &amp;lt;&amp;lt; &amp;quot;-&amp;gt;&amp;quot; &amp;lt;&amp;lt; elem.second &amp;lt;&amp;lt; endl;&lt;br /&gt;
}&lt;br /&gt;
int main(int argc, char** argv)&lt;br /&gt;
{&lt;br /&gt;
  map&amp;lt;int, int&amp;gt; myMap;&lt;br /&gt;
  myMap.insert(make_pair(4, 40));&lt;br /&gt;
  myMap.insert(make_pair(5, 50));&lt;br /&gt;
  myMap.insert(make_pair(6, 60));&lt;br /&gt;
  myMap.insert(make_pair(7, 70));&lt;br /&gt;
  myMap.insert(make_pair(8, 80));&lt;br /&gt;
  for_each(myMap.begin(), myMap.end(), &amp;amp;printPair); &lt;br /&gt;
  return (0);&lt;br /&gt;
}&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;
==Inserting pairs of object into map==&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;map&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;
int main() &lt;br /&gt;
{ &lt;br /&gt;
  map&amp;lt;string, double&amp;gt; option; &lt;br /&gt;
  option[&amp;quot;r&amp;quot;] = 0.1;       &lt;br /&gt;
  option[&amp;quot;s&amp;quot;] = 0.2;     &lt;br /&gt;
  option[&amp;quot;K&amp;quot;] = 1.0;       &lt;br /&gt;
  option[&amp;quot;T&amp;quot;] = 0.7;       &lt;br /&gt;
  option[&amp;quot;S&amp;quot;] = 1.3;       &lt;br /&gt;
  cout &amp;lt;&amp;lt; &amp;quot;Size of map: &amp;quot; &amp;lt;&amp;lt; option.size() &amp;lt;&amp;lt; endl;; &lt;br /&gt;
  map&amp;lt;string, double&amp;gt;::iterator i = option.begin(); &lt;br /&gt;
  while (i != option.end()) &lt;br /&gt;
  { &lt;br /&gt;
    cout &amp;lt;&amp;lt; &amp;quot;Element pair [&amp;quot; &amp;lt;&amp;lt; (*i).first &amp;lt;&amp;lt; &amp;quot;,&amp;quot; &amp;lt;&amp;lt; (*i).second &amp;lt;&amp;lt; &amp;quot;]&amp;quot;; &lt;br /&gt;
    i++; &lt;br /&gt;
  } &lt;br /&gt;
  return 0; &lt;br /&gt;
}&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;
==Iterating over the elements of the map and using the current pair option and second elements.==&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;map&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;
int main() &lt;br /&gt;
{ &lt;br /&gt;
  map&amp;lt;string, double&amp;gt; option; &lt;br /&gt;
  option[&amp;quot;r&amp;quot;] = 0.1;       &lt;br /&gt;
  option[&amp;quot;s&amp;quot;] = 0.2;     &lt;br /&gt;
  option[&amp;quot;K&amp;quot;] = 1.0;       &lt;br /&gt;
  option[&amp;quot;T&amp;quot;] = 0.7;       &lt;br /&gt;
  option[&amp;quot;S&amp;quot;] = 1.3;       &lt;br /&gt;
  cout &amp;lt;&amp;lt; &amp;quot;Size of map: &amp;quot; &amp;lt;&amp;lt; option.size() &amp;lt;&amp;lt; endl;; &lt;br /&gt;
  map&amp;lt;string, double&amp;gt;::iterator i = option.begin(); &lt;br /&gt;
  while (i != option.end()) &lt;br /&gt;
  { &lt;br /&gt;
    cout &amp;lt;&amp;lt; &amp;quot;Element pair [&amp;quot; &amp;lt;&amp;lt; (*i).first &amp;lt;&amp;lt; &amp;quot;,&amp;quot; &amp;lt;&amp;lt; (*i).second &amp;lt;&amp;lt; &amp;quot;]&amp;quot;; &lt;br /&gt;
    i++; &lt;br /&gt;
  } &lt;br /&gt;
  return 0; &lt;br /&gt;
}&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;
==Map for string key and integer 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;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;map&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;
   map&amp;lt;string, int, less&amp;lt;string&amp;gt; &amp;gt; name_age;&lt;br /&gt;
   name_age[&amp;quot;A&amp;quot;] = 7;&lt;br /&gt;
   name_age[&amp;quot;B&amp;quot;] = 39;&lt;br /&gt;
   name_age[&amp;quot;C&amp;quot;] = 14;&lt;br /&gt;
   cout &amp;lt;&amp;lt; &amp;quot;A is  &amp;quot;&lt;br /&gt;
        &amp;lt;&amp;lt; name_age[&amp;quot;A&amp;quot;]&lt;br /&gt;
        &amp;lt;&amp;lt; &amp;quot; years old.&amp;quot; &amp;lt;&amp;lt; endl;&lt;br /&gt;
}&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;
==Pass output message function to for_each function==&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;iostream&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;utility&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
void print_message( const pair&amp;lt;int,string&amp;gt;&amp;amp; message );&lt;br /&gt;
int main( )&lt;br /&gt;
{&lt;br /&gt;
   list&amp;lt; pair&amp;lt; int, string &amp;gt; &amp;gt; message;&lt;br /&gt;
   message.push_back( make_pair( 1, &amp;quot;A&amp;quot; ) );&lt;br /&gt;
   message.push_back( make_pair( 2, &amp;quot;B&amp;quot; ) );&lt;br /&gt;
   message.push_back( make_pair( 3, &amp;quot;C&amp;quot; ) );&lt;br /&gt;
   for_each( message.begin(), message.end(), print_message );&lt;br /&gt;
}&lt;br /&gt;
void print_message( const pair&amp;lt;int,string&amp;gt;&amp;amp; message ){&lt;br /&gt;
   cout &amp;lt;&amp;lt; message.first &amp;lt;&amp;lt; &amp;quot; - &amp;quot; &amp;lt;&amp;lt; message.second &amp;lt;&amp;lt; endl;&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;
==print the maximum number of &amp;lt;key,data&amp;gt; pairs that DateMap can hold==&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;map&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 map&amp;lt;string, int&amp;gt; STRING2INT;&lt;br /&gt;
int main(void)&lt;br /&gt;
{&lt;br /&gt;
    STRING2INT DateMap;&lt;br /&gt;
    STRING2INT::iterator DateIterator;&lt;br /&gt;
    string DateBuffer;&lt;br /&gt;
    cout &amp;lt;&amp;lt; &amp;quot;DateMap is capable of holding &amp;quot; &amp;lt;&amp;lt; DateMap.max_size()&lt;br /&gt;
         &amp;lt;&amp;lt; &amp;quot; &amp;lt;string,int&amp;gt; pairs&amp;quot; &amp;lt;&amp;lt; endl;&lt;br /&gt;
 }&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;
==Put pairs to map with insert==&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;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;map&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
   &lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
  map&amp;lt;char, int&amp;gt; m;&lt;br /&gt;
  int i;&lt;br /&gt;
   &lt;br /&gt;
  for(i=0; i&amp;lt;26; i++) {&lt;br /&gt;
    m.insert(pair&amp;lt;char, int&amp;gt;(&amp;quot;A&amp;quot;+i, 65+i));&lt;br /&gt;
  }&lt;br /&gt;
   &lt;br /&gt;
  return 0;&lt;br /&gt;
}&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;
==Sort a list of int and string pairs==&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;iostream&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;utility&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
void print_message( const pair&amp;lt;int,string&amp;gt;&amp;amp; message );&lt;br /&gt;
int main( )&lt;br /&gt;
{&lt;br /&gt;
   list&amp;lt; pair&amp;lt; int, string &amp;gt; &amp;gt; message;&lt;br /&gt;
   message.push_back( make_pair( 1, &amp;quot;A&amp;quot; ) );&lt;br /&gt;
   message.push_back( make_pair( 2, &amp;quot;B&amp;quot; ) );&lt;br /&gt;
   message.push_back( make_pair( 3, &amp;quot;C&amp;quot; ) );&lt;br /&gt;
   for_each( message.begin(), message.end(), print_message );&lt;br /&gt;
   message.sort();&lt;br /&gt;
   for_each( message.begin(), message.end(), print_message );&lt;br /&gt;
}&lt;br /&gt;
void print_message( const pair&amp;lt;int,string&amp;gt;&amp;amp; message ){&lt;br /&gt;
   cout &amp;lt;&amp;lt; message.first &amp;lt;&amp;lt; &amp;quot; - &amp;quot; &amp;lt;&amp;lt; message.second &amp;lt;&amp;lt; endl;&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 map to store the value of the month name and its day number==&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;map&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;
class ltstr{&lt;br /&gt;
  public:&lt;br /&gt;
    bool operator()(const char* s1, const char* s2) const&lt;br /&gt;
     { return (strcmp(s1, s2) &amp;lt; 0);}&lt;br /&gt;
};&lt;br /&gt;
int main(void)&lt;br /&gt;
{&lt;br /&gt;
  map&amp;lt;const char*, int, ltstr&amp;gt; months;&lt;br /&gt;
  &lt;br /&gt;
  months[&amp;quot;January&amp;quot;] = 31;&lt;br /&gt;
  months[&amp;quot;February&amp;quot;] = 28;&lt;br /&gt;
  months[&amp;quot;March&amp;quot;] = 31;&lt;br /&gt;
  months[&amp;quot;April&amp;quot;] = 30;&lt;br /&gt;
  months[&amp;quot;May&amp;quot;] = 31;&lt;br /&gt;
  months[&amp;quot;June&amp;quot;] = 30;&lt;br /&gt;
  months[&amp;quot;July&amp;quot;] = 31;&lt;br /&gt;
  months[&amp;quot;August&amp;quot;] = 31;&lt;br /&gt;
  months[&amp;quot;September&amp;quot;] = 30;&lt;br /&gt;
  months[&amp;quot;October&amp;quot;] = 31;&lt;br /&gt;
  months[&amp;quot;November&amp;quot;] = 30;&lt;br /&gt;
  months[&amp;quot;December&amp;quot;] = 31;&lt;br /&gt;
  &lt;br /&gt;
  cout &amp;lt;&amp;lt; &amp;quot;june -&amp;gt; &amp;quot; &amp;lt;&amp;lt; months[&amp;quot;June&amp;quot;] &amp;lt;&amp;lt; endl;&lt;br /&gt;
  map&amp;lt;const char*, int, ltstr&amp;gt;::iterator cur  = months.find(&amp;quot;June&amp;quot;);&lt;br /&gt;
  map&amp;lt;const char*, int, ltstr&amp;gt;::iterator prev = cur;&lt;br /&gt;
  map&amp;lt;const char*, int, ltstr&amp;gt;::iterator next = cur;&lt;br /&gt;
  ++next;&lt;br /&gt;
  --prev;&lt;br /&gt;
  cout &amp;lt;&amp;lt; &amp;quot;Previous (in alphabetical order) is &amp;quot; &amp;lt;&amp;lt; (*prev).first &amp;lt;&amp;lt; endl;&lt;br /&gt;
  cout &amp;lt;&amp;lt; &amp;quot;Next (in alphabetical order) is &amp;quot; &amp;lt;&amp;lt; (*next).first &amp;lt;&amp;lt; endl;&lt;br /&gt;
}&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>