Articles & Books

Thriving in a crowded and changing world: C++ 2006–2020

On which Bjarne Stroustrup describes how C++ has managed to thrive despite many things

Thriving in a Crowded and Changing World: C++ 2006–2020

By Bjarne Stroustrup

From the article:

This paper focuses on the major changes to the ISO C++ standard for the 2011, 2014, 2017, and 2020 revisions.
The standard library is about 3/4 of the C++20 standard, but this paper’s primary focus is on language features
and the programming techniques they support.

QStringView diaries: zero-allocation string splitting -- Marc Mutz

QStringTokenizer merged for Qt 6.0

QStringView Diaries: Zero-Allocation String Splitting

by Marc Mutz

From the article:

I am happy to announce that the first QStringTokenizer commits have landed in what will eventually become Qt 6.0.

QStringTokenizer splits strings, with zero memory allocations, universally, and safely.

While the version in Qt will be Qt 6-only, KDAB will release this tool for Qt 5 as part of its KDToolBox productivity suite.

The C and C++ Club : A technical blog

Deepesh has started a club about C and C++.

The C and C++ Club

by Deepesh Menon P M

About the club:

He has started a technical blog on C and C++, covering various philosophical aspects of these languages. Do visit and share your comments. 5 parts and 22 chapters are there on C, C++, design patterns and data structures. Please support me on this venture.

C++20: Structure Modules--Rainer Grimm

The series continue.

C++20: Structure Modules

By Rainer Grimm

From the article:

When your module becomes bigger you want to divide its functionality into manageable components. C++20 modules offer two approaches: submodules and partitions. Let me discuss both approaches in this post.

C++ Lambdas, Threads, std::async and Parallel Algorithms--Bartlomiej Filipek

How do you use them?

C++ Lambdas, Threads, std::async and Parallel Algorithms

by Bartlomiej Filipek

From the article:

In articles about lambda expression (like this one from last week on my page), it’s easy to show examples where the lambda runs on the same thread as the caller. But how about asynchronous cases? What if your lambda is called on a separate thread? What problems you might encounter there.

Read on and let’s explore this topic...

How to ask for C++ coding help--Kate Gregory

The good practices exist also to ask for help.

How to ask for C++ coding help

by Kate Gregory

From the article:

Lately a lot of people have been asking me for help as they write C++ code. I’m usually happy and able to help. There are times, though, when I either cannot help, or choose not to help. I thought it might be helpful to explain some of these a little. It’s quite likely that other members of the community have a similar set of guidelines in their heads for when they do and don’t help people with code...

5 Advantages of C++ Lambda Expressions and How They Make Your Code Better--Bartlomiej Filipek

Do you agree?

5 Advantages of C++ Lambda Expressions and How They Make Your Code Better

by Bartlomiej Filipek

From the article:

The mixture of brackets in the preceding line become one of the most noticeable indications of Modern C++.
Yep.
Lambda Expressions!
It might sound like I’m trying to create a new blog post about something that everyone knows. Is that true? Do you know all the details of this modern C++ technique?

In this article, you’ll learn five advantages of Lambdas. Let’s start...