STL ASSOCIATIVE CONTAINERS * hash tables * unordered containers STL ALGORITHMS CALLBACKS * function pointers * lambda expression - capture block, context, capture variables * functors * predefined functors: arithmetic, comparison, logical * function adapters(binders) * using above constructs to form callbacks with examples of find_if, generate, for_each, two forms of accumulate * std::function CATEGORIES * utility * non-modifying * modifying - remove-erase idiom - source and target range * sorting * set ENHANCED ITERATOR FUNCTIONS - iterator movement - reverse iterators - insert/back and front insert DESIGN PATTERNS * singleton - motivation (why use the pattern) - static features - atexit() - forbidding object copying: delete vs. making private - idioms vs. design patterns vs. frameworks - singleton meyers vs. classic implementation * template method - motivation - overloading vs. overriding - virtual function implementation and use - override and final - pure virtual functions and abstract classes - virtual destructors - constructor delegation - primitive vs. hook operations - template method function * abstract factory - motivation - abstract vs. concrete objects - factory and factory method - abstract vs. concrete factory, abstract vs. concrete method * bridge - motivation - delegation - static, dynamic, reinterpret and const casting - body vs. handle, abstract and concrete body and handle