Articles & Books

C++ Lambda Story is 100% Complete

Will you read it?

C++ Lambda Story is 100% Complete

by Bartlomiej Filipek

From the article:

I’m pleased to announce that I’ve finished the work on the latest update for C++ Lambda Story! This makes the book complete now, and I can finally set its status to 100%! Read on to see the latest changes. It got more than 50 new pages!

Thirty Years C++. Interview with Bjarne Stroustrup--Roberto V. Zicari

An interesting read.

Thirty Years C++. Interview with Bjarne Stroustrup

by Roberto V. Zicari

From the article:

“If you keep your good ideas to yourself, they are useless; you could just as well have been doing crossword puzzles. Only by articulating your ideas and making them accessible through writing and talks do they become a contribution.” –Bjarne Stroustrup

Back in 2007 I had the pleasure to interview Bjarne Stroustrup, the inventor of  C++ programming language. Thirteen years later…, I still have the pleasure to publish an interview with Bjarne...

std::ref and std::reference_wrapper: Common use cases -- Hitesh Kumar

fbgohNwY5aexuWMq9qJ95DEN.jpgMotivation behind reference_wrapper and common use cases.

std::ref and std::reference_wrapper: Common use cases

by Hitesh Kumar

From this article:

An std::reference_wrapper is a copyable and assignable object that emulates a reference. Contrary to its name, it does not wrap a reference. It works by encapsulating a pointer (T*) and by implicitly converting to a reference (T&). It cannot be default constructed or initialized with a temporary; therefore, it cannot be null or invalid.

Solving the Static Initialization Order Fiasco with C++20--Rainer Grimm

Are you aware of the problem?

Solving the Static Initialization Order Fiasco with C++20

by Rainer Grimm

From the article:

According to the FAQ of is the static initialization order fiasco "a subtle way to crash your program". The FAQ continues: The static initialization order problem is a very subtle and commonly misunderstood aspect of C++. ". Today, I write about this very subtle and misunderstood aspect of C++.

A plea for order -- Philipp Lenk

A few days ago, one particularly ambitious victim student of mine asked for assistance in tracking down a bug.

A plea for order

by Philipp Lenk

From the article:

I know I promised to talk more about emulation, about chess and operating systems, but I have to get something off of my chest first. This is not going to be one of my would-be grand and elongated epics trying to cover far too much in far too many words. Instead, I shall focus on one very small, very self contained thing: the order of #include directives in C++ source code


Quick Q; Recursive unordered_map

Quick A: there is no guarantee for a container to work with incomplete types.

Recently on SO:

Recursive unordered_map

STL containers are not required to work with incomplete types. If you don't mind extra indirection, then the workaround is std::map<int, std::unique_ptr<Node>>.

8 years of Meeting C++

8 years ago in 2012, Meeting C++ got started!

8 years of Meeting C++

by Jens Weller

From the article:

In 2012 Meeting C++ got started in July. Planned first to be a one off conference, now it is a successfull international conference and a platform for C++ on the internet.