Articles & Books

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...

C++20: A Simple math Module--Rainer Grimm

The series continue.

C++20: A Simple math Module

by Rainer Grimm

From the article:

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...

Ray Tracing in one weekend with SYCL

SYCL is an open standard developed by the Khronos™ Group that enables developers to write code for heterogeneous systems using standard C++.

Ray-tracing in a Weekend with SYCL: Basic sphere tracing

by Codeplay

About the article

C++ Ray-Tracing in a Weekend by Peter Shirley is a great resource to start learning about ray-tracers and how to implement one, and at the same time providing all the source code in a GitHub repository . You can find more information about his books on ray-tracing techniques with accompanying implementations on his blog, and you can also download the books as .pdf, or load them on your Kindle device for free from the GitHub project.

The main goal of this blog post is not to teach the concepts of ray-tracing, Peter does a great job of that, but provide a walk-through tutorial on how to accelerate practical applications and algorithms using SYCL.

Meeting C++ Blogroll now available as a weekly newsletter

Since more then 5 years the Meeting C++ Blogroll exists on meetingcpp.com, now its also available as a weekly newsletter!

Meeting C++ Blogroll now available as a weekly newsletter

by Jens Weller

From the article

You can now subscribe to the blogroll as a weekly newsletter, and receive every friday what has been posted on blogs and videos about C++ directly from Meeting C++ by email! If you already have an Meeting C++ Account, you can subscribe via the profile edit page.

Ordering by constraints--Andrzej KrzemieĊ„ski

Moving to C++20!

Ordering by constraints

by Andrzej Krzemieński

From the article:

In the previous post we have seen how constraint conjunction and disjunction works, and how a function template with constraints is a better match than a function template without constraints (provided that the constraints are satisfied) when determining the best overload. We have also mentioned that selecting a better match from two constrained templates is possible, but not obvious. In this post we will expand on this, and show how constraint conjunction and disjunction as well as concepts play an important role in ordering function overloads and class template specializations based solely on constraints. This is one of the situations where language concepts show their special properties...