C++17 In Detail

16 February 2019

C++ Links #19

Welcome to new C++ Links - most important and useful articles, podcasts and videos that happen between 9th and 15th of February 2019.

In this week you will find a link to a great post about a technique that can help reduce compilation time, an article that explains how Smart Iterators are working and many more!

  1. Bartłomiej Filipek shows only 2 lines of code that contains a surprisingly large amount of C++17: “2 lines of code and 3 C++17 features, overload pattern“:
    bfilipek.com/2019/02/2lines3featuresoverload.html

  2. Article from Tristan Brindle about std::initializer_list. He points one of the problems with it - unnecessary object copies. He creates a helper class that counts how many copies/moves are performed and does some research with different techniques of initialisation:
    tristanbrindle.com/posts/beware-copies-initializer-list

  3. Rainer Grimm shows another set of C++ Core Guidelines rules related to templates, e.g. when to name a lambda with std algorithms:
    modernescpp.com/index.php/c-core-guidelines-other-template-rules

  4. A new episode of C++ Weekly - Jason Turner presents how creating unnecessary destructors may produce extra assembly and increase the binary size:
    youtube.com/watch?v=D8eCPl2zit4

  5. Ivan Čukić showed how to use move iterators, in his examples, he uses std::filesystem from C++17:
    cukic.co/2019/02/09/moving-iterators-in-cxx/

  6. Jonathan Boccara wrote a post about Smart Iterators, he explains how they work in a beginner-friendly way & explains what TPOIASI (The Terrible Problem Of Incrementing A Smart Iterator) is:
    fluentcpp.com/2019/02/12/the-terrible-problem-of-incrementing-a-smart-iterator/

  7. Follow up from Jonathan - he describes how Smart Output Iterators can help with TPOIASI:
    fluentcpp.com/2019/02/15/how-smart-output-iterators-fare-with-the-terrible-problem-of-incrementing-a-smart-iterator/

  8. In a guest post at Simplify C++ - Daniele Pallastrelli showed a really interesting technique that can help reduce compile-time with extern templates:
    arne-mertz.de/2019/02/extern-template-reduce-compile-times/

  9. New CppCast episode, interview with Edaqa Mortoray, which created his own programming language called “Leaf”:
    cppcast.com/2019/02/edaqa-mortoray/

  10. Victor Zverovich showed how to format floating numbers. It looks like it’s a really complicated task:
    zverovich.net/2019/02/11/formatting-floating-point-numbers.html

Extra 1: New videos from Meeting C++ are available on their youtube channel (yes, they still uploading new videos almost every day!):
youtube.com/meetingcpp

Extra 2: Meeting C++ team also have great blogroll:
meetingcpp.com/blog/blogroll/items/Meeting-Cpp-Blogroll-178.html

Extra 3: You can start watching talks from Cpp On Sea, a recent c++ conference that happened in February:
youtube.com/cpponsea

Extra 4: The Legacy Code Programmer’s Toolbox is Out - Fluent C++ - see the first book from Jonathan Boccara!
leanpub.com/legacycode

Extra 5. Second edition of great book - C++ Concurrency In Action - is available:
manning.com/books/c-plus-plus-concurrency-in-action-second-edition

The links are brought to you by Wojciech Razik.
Wojtek is a Senior C++ developer at Thaumatec, currently writing software for a robot. He enjoys reading C++ Standard before bed, and he loves to hate JS from dawn to dusk.
If you know Polish, take a look at cpp-polska.pl where Wojtek is one of the co-authors.

Get my free ebook about C++17!

More than 50 pages about the new Language Standard.

C++17 in detail, by Bartlomiej Filipek

C++17 In Detail
© 2017, Bartlomiej Filipek, Blogger platform
Disclaimer: Any opinions expressed herein are in no way representative of those of my employers. All data and information provided on this site is for informational purposes only. I try to write complete and accurate articles, but the web-site will not be liable for any errors, omissions, or delays in this information or any losses, injuries, or damages arising from its display or use.
This site contains ads or referral links, which provide me with a commission. Thank you for your understanding.