After introducing uniform initialization with C++11, there are at least 5 ways in C++ to initialize an object. Each have them has different rules, different effects, and different usage depending on the context and goals. The situation is so confusing that today nobody can tell anymore which type of initialization to teach to beginners. That's nothing but a disaster.
This talk will discuss the different forms of initialization, compare them to know when to use which, discuss what changed with C++14 and C++17 and what still has to change, and finally what to teach now to beginners. I promise a source of trouble and discussion.
Nicolai Josuttis (http://www.josuttis.com) is well known in the programming community because he not only speaks and writes with authority (being the (co-)author of the world-wide best sellers The C++ Standard Library (www.cppstdlib.com), C++ Templates (www.tmplbook.com), C++1... Read More →