Articles & Books

Upcoming C++ User Group meetings in September

A listing of the upcoming C++ User Group Meetings in September

C++ User Group Meetings in September 2021

by Jens Weller

From the article:

The monthly overview about upcoming C++ User Group Meetings in September. As the pandemic ends or continues, depending in which part of the world you live, I list again all meetings online and real world.

Meeting C++ online hosts two events in September:

    16.9 C++ UG Meeting C++ online - September - Windows, macOS and the Web: Lessons from cross-platform
    28.9 C++ UG Meeting C++ online - Online C++ job fair (afternoon CEST)
    29.9 C++ UG Meeting C++ online - Online C++ job fair (evening CEST)

Meeting C++ is still looking for employers to participate in the online job fair, register your spot with in the next days to be best visible for this event.

Asynchronous Stacks and Scopes--Eric Niebler

A revolution?

Asynchronous Stacks and Scopes

by Eric Niebler

From the article:

In Structured Concurrency, I talk about what structured concurrency is and why it’s a big deal for C++ especially. In this post I discuss some more interesting properties of asynchronous code that is structured: async stacks and async scopes...

The First Big Update of My C++20 Book--Rainer Grimm

Will you get it?

The First Big Update of My C++20 Book

by Rainer Grimm

From the article:

I'm happy to announce the first big update of my C++20 book. The update was mainly due to the improved C++ compiler support of C++20. The update includes concepts, the ranges library, modules, the three-way comparison operator, the format library, and the chrono library.

Empty Base Class Optimisation, no_unique_address and unique_ptr--Bartlomiej Filipek

Life made easier.

Empty Base Class Optimisation, no_unique_address and unique_ptr

by Bartlomiej Filipek

From the article:

C++20 added a couple of new attributes in the form of [[attrib_name]]. One of them - [[no_unique_address]] - can have surprising effects on the code! In this blog post, you’ll learn how to optimize your classes' layout and make some data members “disappear”. In most cases, it will be just one line of C++20 code.

Let’s go...

How to Define Comparison Operators by Default in C++--Jonathan Boccara

Do you know?

How to Define Comparison Operators by Default in C++

by Jonathan Boccara

From the article:

Implementing comparison operators in C++ is easier said than done.

Indeed, for most types, if we could talk to the compiler we would say something like: “to order them, use a lexicographical order on their members”.

But when it comes to writing the corresponding code, things get more complicated.

However, a classical technique using std::tuple makes the code much more concise for comparison operators, and it should be used by default. (At least before C++20, as C++20 made comparison operators even easier to write).

Let’s see the technique involving std::tuple and then how the comparison operators situation evolves with C++20...

C++20 modules with GCC11--Niall Cooling

Will you start using them?

C++20 modules with GCC11

by Niall Cooling

From the article:

One of the headline changes of the C++20 standard is the inclusion of modules. Modules promise to significantly change the structure of C++ codebases and possibly signal headers’ ultimate demise (but probably not in my lifetime). It also opens the door to potentially have a unified build system and package manager, similar to Rust’s Cargo package manager; though I imaging standardising a unified build system would be one bloody battle.

Stricter Expression Evaluation Order in C++17--Bartlomiej Filipek

Do you know the rules?

Stricter Expression Evaluation Order in C++17

by Bartlomiej Filipek

From the article:

C++ has many dark corners and many caveats that can cause you to scratch your head in confusion. One of the issues we had until C++17 was the evaluation order of expressions. In this blog post, I’ll show you the new rules that we got in C++17 that made this complicated term much simpler and practical.

Here are the main points for today:

  • What’s the case with make_unique vs unique_ptr<T>(new T) in a function call.
  • What are the new rules for C++17?
  • Are all bugs fixed and now well defined?

Let’s go.

Bringing back the Meeting C++ employer listing

Relaunching another part of Meeting C++ recruiting: the employer listing.

Bringing back the Meeting C++ employer listing

by Jens Weller

From the article

Meeting C++ brings back the listing of C++ employers to its website as part of Meeting C++ recruiting. The companies will be visible in the listing it self, but also have their logos displayed in the job section next to every job advert posted to Meeting C++! Additionally, the companies are also listed in the CV/resume sharing form of Meeting C++.