C plus plus:Modern C plus plus
From GPWiki
Modern C++ : Going Beyond "C with Classes"
- Preface
- std::vector
- RAII
- Containers
- Iterators
- Algorithms
- Functors
- Binders
- Storing Functors
- References
- Glossary
- Appendices
Good to see another person taking an interest in Modern C++. If you're not sure where to start or aren't sure what this is all about, try starting at the Preface.
If you're looking for an overview of what's covered, here's a detailed table of contents.
- Preface
- Gives motivation for the tutorial as well as details my assumptions.
- std::vector
- Describes std::vector, perhaps the most immediately useful single class in the Standard C++ Library.
- RAII
- A fast, safe, general, and elegant solution to resource management.
- Containers
- Introduces the Containers, since there are more ways to store groups of elements than just in std::vectors.
- Iterators
- Iterators are the elegant abstraction that allows all containers to be accessed similarly.
- You may have heard of the pattern from GoF, but operator overloading makes the C++ implementation wonderfully elegant.
- Algorithms
- Algorithms are basically functions that operate on iterator ranges, allowing them to be used on any sequence of data, such as the contents of a file or a container.
- Functors
- Functors allow further generalisation of algorithms, permitting C++ to come remarkably close to a functional language.
- Binders
- Binders allow you to compose Functors, letting you generate Functors on the fly.
- Can you say "first-class functions"?
- Storing Functors
- Details std::tr1::function, which stores any kind of functor, be it a member function, plain C-style function, or bound functor.
- Let's see you do that with a function pointer.
- References
- Various recommended references, essays, books, pages, ...
- Glossary
- A few descriptions of domain-specific terms.
- Appendices
- A few supplementary chapters covering prerequisites.