C++11 -- The New Standard
Dave Abrahams, BoostPro Computing
Contact [email protected] for further details
In this class we’ll be using real C++11 compilers to explore the new standard, including these specific topics:
• Classes: override
and final
, =default
and =delete
, in-class member initializers, delegating and inheriting constructors
• Move Semantics: copy elision, rvalue references, and perfect forwarding
• Concurrency: high- and low-level lock-based components. Atomics and the C++ memory model.
• General: range-based for
loops, nullptr, uniform initialization, string encodings, unicode, and auto
• Functional: Lambda expressions, std::bind
, std::function
, user-defined literals, and constexpr
• Exceptions: noexcept
, nesting, copying, and re-throwing, system_error
and friends
• Containers: array
s, tuple
s, initializer_list
s, emplacement, scoped allocators, and hash tables
• Basic Types: standard-layout types, extended integer types, generalized unions, alignments, and scoped enums
• Smart Pointers: unique_ptr
, shared_ptr
, weak_ptr
, make_shared
, allocate_shared
• Templates: extended SFINAE, working with decltype
and declval
, and variadic templates
Because the earlier C++03 standard is familiar, and will still be relevant for many years, we offer special attention to future-proofing and to the emulation of C++11 features in C++03 using 3rd-party libraries such as Boost.
Who It’s For: experienced C++ programmers who want to be ready for C++11.
Format: Each day is divided roughly into four blocks, each consisting of an hour of lecture and thirty minutes of hands-on exercises. Ideally presented as a 5-day course, it is scalable to 3 days customized to your team’s needs.
Download a complete brochure (PDF) or contact [email protected] for details.
Add a Comment
Comments are closed.