Part 2 of my third video lecture series (covering the C++ Core Language) is now available. In this part, I took an hour to explore template argument deduction, including what “non-deduced contexts” are – and how they can be used to your advantage! For reference, here are all of the links to my video lectures, plus my GoingNative 2012 presentation:
[STL Introduction]
Part 1 (sequence containers)
Part 2 (associative containers)
Part 3 (smart pointers)
Part 4 (Nurikabe solver) – see Wikipedia’s article and my updated source code
Part 5 (Nurikabe solver, continued)
Part 6 (algorithms and functors)
Part 7 (algorithms and functors, continued)
Part 8 (regular expressions)
Part 9 (rvalue references)
Part 10 (type traits)
[Advanced STL]
Part 1 (shared_ptr – type erasure)
Part 2 (equal()/copy() – algorithm optimizations)
Part 3 (_ITERATOR_DEBUG_LEVEL, #pragma detect_mismatch, and /d1reportSingleClassLayout)
Part 4 (rvalue references v2.1 and associative container mischief)
Part 5 (deduplicator, using Boost.Bimap, Filesystem, and ScopeExit) – see my deduplicate.cpp
Part 6 (container pretty printer) – see my pretty_printer.cpp
[GoingNative 2012]
STL11: Magic && Secrets (make_shared<T>(), emplacement, pair SFINAE, range-based for-loop) – see my slides
[Core C++]
Part 1 (name lookup)
Part 2 (template argument deduction)
Stephan T. Lavavej
Senior Developer – Visual C++ Libraries
0 comments