Руководство по стандартной библиотеке шаблонов STL

Loop until end is reached.


#include <iostream.h> #include <stl.h>

int main () { typedef multimap<char, int, less<char> > mmap; mmap m; cout << "count ('X') = " << m.count ('X') << endl; m.insert (pair<const char, int> ('X', 10)); // Standard way. cout << "count ('X') = " << m.count ('X') << endl; m.insert ('X', 20); // Non-standard, but very convenient! cout << "count ('X') = " << m.count ('X') << endl; m.insert ('Y', 32); mmap::iterator i = m.find ('X'); // Find first match. while (i != m.end ()) // Loop until end is reached. { cout << (*i).first << " -> " << (*i).second << endl; i++; } int count = m.erase ('X'); cout << "Erased " << count << " items" << endl; return 0; }



#include <iostream.h> #include <stl.h>

typedef multimap<int, char, less<int> > mmap;

typedef pair<const int, char> pair_type;

pair_type p1 (3, 'c'); pair_type p2 (6, 'f'); pair_type p3 (1, 'a'); pair_type p4 (2, 'b'); pair_type p5 (3, 'x'); pair_type p6 (6, 'f');

pair_type array [] = { p1, p2, p3, p4, p5, p6 };

int main () { mmap m (array, array + 7); mmap::iterator i; // Return location of first element that is not less than 3 i = m.lower_bound (3); cout << "lower bound:" << endl; cout << (*i).first << " -> " << (*i).second << endl; // Return location of first element that is greater than 3 i = m.upper_bound (3); cout << "upper bound:" << endl; cout << (*i).first << " -> " << (*i).second << endl; return 0; }


Содержание раздела