PROCEDURAL AND OBJECT-BASED PROGRAMMING * range-based for and pass-by value, reference and const reference loop variable * default value for standalone function parameters * rvalue references, scopes for r-value references, function returning rvalues * local static variables * definitions vs. declarations for variables, functions classes * shallow vs. deep copy * copy-and-swap idiom * member initialization list, initializers TEMPLATES * standalone function templates, type parameter deduction * class templates, object declaration, explicit type specification * nontype parameters * default template arguments * templates as type arguments * friends of templated class, general vs. specific templates STL SEQUENTIAL CONTAINERS * time complexity, amortized time complexity * sequential containers and functions common for sequential containers * random access containers * vectors and functions specific for vectors, vector space allocation memory transparency, capacity() and reserve() * deque and deque space allocation * iterator, iterator operations, half-open range * container traversal * indexing and iterator arithmetic for random access containers * container update functions, iterator invalidation, loop modification idiom * lvalue, xvalue, glvalue, rvalue, pravlue * rvalue reference vs. lvalue reference, reference overload * move semantics and std::move * emplace() * lists, list functions, specialized list functions * container adapters STL ASSOCIATIVE CONTAINERS * trees, search trees and pairs * map, declaring, traversing, element lookup element inserting, range inserting element erasing * multimaps, specifics and difference form maps * sets, multisets * hash tables * unordered containers