Back to 2014-proposals
Title: C++14 an overview on the new standard for C++(11) programmers
Proposer: Peter Sommerlad
Type: Tutorial
Duration: 90 mins
Description:
The standardization process of C++ accelerated. After C++11 we will have a bug-fix release in 2014. This talk will summarize the most important 'fixes' and new features that were introduced with C++14. It will not only list the features, but also show how these features simplify the life of a C++ programmer, especially one, that already adopted C++11.
The talk will also provide a quick overview on the things that didn't make it into C++14, but that will be available as so-called technical specifications (TS). While these are not fully standard yet, because some design changes might come, they are ready to try and to provide feedback, if something is not specified as one would expect it.
Among the C++14 language features covered are new syntax for numeric literals including binary numbers, fewer restrictions on the definition of constexpr functions and literal types, constexpr variable templates (not variadic!), more versatility on the use of auto in lambdas and return-type deduction for lambdas and functions.
While the C++14 library will not get std::optional<T> yet, it provides several improvements as well, for example, make_unique for std::uniqe_ptr, a quoted() manipulator for symmetric string I/O, exchange() to obtain a previous value from an assignment, flexible standard operator functors and user-defined literals for string, durations and complex numbers. For the template meta programmer, template aliases allow shorthands instead of ::type or ::value, easier use of tuples and complete iterator access, through global cbegin, rbegin, and rcbegin plus their corresponding xend functions.