C++20: Optimized Comparison with the Spaceship Operator

In this post, I conclude my miniseries to the three-way comparison operator with a few subtle details. The subtle details include the compiler-generated the == and != operators and the interplay of classical comparison operators and the three-way comparison operator.

Read more
Views: 1773

C++20: More Details to the Spaceship Operator

The compiler performs quite a clever job when it generates all six comparison operators. On the end, you get the intuitive and efficient comparison operators for free. Let me dive with this post into the details of the spaceship operator.

Read more
Views: 12773

C++20: The Three-Way Comparison Operator

The three-way comparison operator <=> is often just called spaceship operator. The spaceship operator determines for two values A  and B whether A < B, A = B, or A > B. You can define the spaceship operator or the compiler can auto-generate it for you.

Read more
Views: 48223

C++20: Further Open Questions to Modules

So far, I have written in my last four posts the basics you should know about modules in C++20. Only a few questions to modules are still open. In this post, I address these open questions, such as templates in modules, the linkage of modules, and header units.

Read more
Tags: modules
Views: 3994

C++20: Structure Modules

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.

Read more
Tags: modules
Views: 9612

C++20: Module Interface Unit and Module Implementation Unit

Thanks to the module interface unit and the module implementation unit, you can separate the interface from the implementation when defining a module. Let me show, how.

Read more
Tags: modules
Views: 8151

C++20: A Simple math Module

Modules are one of the four prominent features of C++20. They overcome the restrictions of header files and promise a lot: faster build-times, fewer violations of the One-Definition-Rule, less usage of the preprocessor. Today, I want to create a simple math module.

Read more
Tags: modules
Views: 7281

C++20: The Advantages of Modules

Modules are one of the four big features of C++20: concepts, ranges, coroutines, and modules. Modules promise a lot: compile-time improvement, isolation of macros, the abolition of header files, and ugly workarounds.

Read more
Tags: modules
Views: 17506

C++20: Thread Pools with cppcoro

This post is the third and final post in my miniseries to cppcoro. cppcoro is a library of coroutine abstractions from Lewis Baker. Today, I introduce thread pools.

Read more
Views: 6465

C++20: Powerful Coroutines with cppcoro

I gave in my last post "C++20: Coroutines with cppcoro", a basic introduction to the coroutines library from Lewis Baker. This introduction covered the elementary coroutines task and generator. Today, I add threads to tasks and get powerful abstractions. 

Read more
Views: 6016

My Newest E-Books

Course: Modern C++ Concurrency in Practice

Course: C++ Standard Library including C++14 & C++17

Course: Embedded Programming with Modern C++

Course: Generic Programming (Templates)

Course: C++ Fundamentals for Professionals

Subscribe to the newsletter (+ pdf bundle)

Blog archive

Source Code


Today 1040

All 4162959

Currently are 97 guests and no members online

Kubik-Rubik Joomla! Extensions

Latest comments