20

Maps and Sets

Write programs that do one thing and do it well. Write programs to work together.

– Doug McIlroy

The C++ standard library offers more containers than vector and list. In this chapter, we introduce the associative containers map and unordered_map in which we can look up a value by giving a “key.” For example, looking for a record by quoting a name. Such types are pervasive in applications because they simplify and speed up common tasks. Some types are not standard-library containers, but can be seen as a sequence of elements. Examples are built-in arrays and I/O streams. The notion of iterators is so flexible that such types can be fitted into the framework. To benefit from that flexibility, we generalize ranges.

§20.1 Associative ...

Get Programming: Principles and Practice Using C++, 3rd Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.