Book Image

The C++ Workshop

By : Dale Green, Kurt Guntheroth, Shaun Ross Mitchell
Book Image

The C++ Workshop

By: Dale Green, Kurt Guntheroth, Shaun Ross Mitchell

Overview of this book

C++ is the backbone of many games, GUI-based applications, and operating systems. Learning C++ effectively is more than a matter of simply reading through theory, as the real challenge is understanding the fundamentals in depth and being able to use them in the real world. If you're looking to learn C++ programming efficiently, this Workshop is a comprehensive guide that covers all the core features of C++ and how to apply them. It will help you take the next big step toward writing efficient, reliable C++ programs. The C++ Workshop begins by explaining the basic structure of a C++ application, showing you how to write and run your first program to understand data types, operators, variables and the flow of control structures. You'll also see how to make smarter decisions when it comes to using storage space by declaring dynamic variables during program runtime. Moving ahead, you'll use object-oriented programming (OOP) techniques such as inheritance, polymorphism, and class hierarchies to make your code structure organized and efficient. Finally, you'll use the C++ standard library?s built-in functions and templates to speed up different programming tasks. By the end of this C++ book, you will have the knowledge and skills to confidently tackle your own ambitious projects and advance your career as a C++ developer.
Table of Contents (15 chapters)

Map/Unordered Map: Our Associative Containers

Maps and unordered maps are associative containers. Elements within a map/unordered map are associated with a key and are accessed through this key. No two elements within a map/unordered map can have the same key. Internally, maps are sorted by keys using an internal comparison object. Conversely, elements in an unordered map are not sorted by keys, but are stored in a fashion that allows fast retrieval of elements by their key. Maps are generally more suited for iterating over and looking up keys, whereas unordered maps are more efficient at accessing elements directly by their associated key. If you end up looping through your data and using each element in some way, then a map is most suitable; if you are mostly grabbing an element from the container by its key and not looping over the entire collection, then an unordered map is the most suitable.

Constructing Maps and Unordered Maps

Here is a selection of constructors to use...