REVIEW - C++17 The Complete Guide

Title:

C++17 The Complete Guide

Author:

Nicolai M. Josuttis

ISBN:

9783967300178

Publisher:

Leanpub ()

Pages:

454

Reviewer:

Paul Floyd

Reviewed:

March 2020

Rating:

★★★★★

The book is available with continuous updates: https://leanpub.com/cpp17

Highly recommended

One of the most difficult aspects with this book is that it is similar to C++17 In Detail by Bartlomiej Filipek. If you are asking yourself “Which one should I get?”, then I’m afraid that I’m not going to be much help as my usual answer to such a question is to buy both. This book is slightly longer and a bit denser.

This book only covers the ‘deltas’ that C++17 has added to (and to a small extent subtracted from) the prior C++ standards. This means that you will need to have a good working knowledge of C++03/11/14 in order to read and benefit from this book.

There are six sections to the book: basic language, template features, new and changed library components, expert utilities and finally general hints. Each section is divided into chapters of around 10 pages (a bit longer for features that require a lot of details like ‘filesystem’). The overall style is mostly descriptive text with annotated snippets. There are some longer examples of runnable code, for instance a mallinfo -style allocator tracker for new and delete . I won’t go into detail on all of the 35 chapters (the table of contents can be seen on the book’s Leanpub web page). Suffice it to say that I felt that there is a good amount of coverage on all of the topics.

One little thing that I felt could have been added is a brief word on compiler/standard library/platform support. I’d like to play around with the parallel algorithms a bit, but only some compiler/library/platform combinations support them currently.