The Ranges Library in C++20: More Details

Thanks to the ranges library, working with the Standard Template Library (STL) is much more comfortable and powerful. The algorithms of the ranges library are lazy, can work directly on the container, and can easily be composed. But there is more to it:

Read more
Views: 9008

Check Types with Concepts

Concepts are a powerful and elegant tool to check at compile time if a type fulfills. Thanks to static_assert, you can use concepts as a standalone feature: static_assert(Concept<T>).

Read more
Tags: concepts
Views: 5391

Check Types with Concepts - The Motivation

static_assert allows you to check at compile time if a type T fulfills the Concept: static_assert(Concept<T>).

Read more
Tags: concepts
Views: 5533

Using Requires Expression in C++20 as a Standalone Feature

In my last post "Defining Concepts with Requires Expressions", I exemplified how you can use requires expressions to define concepts. Requires expressions can also be used as a standalone feature when a compile-time predicate is required.

Read more
Views: 5873

Defining Concepts with Requires Expressions

In my last post "Define Concepts", I defined the concepts Integral, SignedIntegral, and UnsigendIntegral using logical combinations of existing concepts and compile-time predicates. Today, I use Requires Expressions to define concepts.

Read more
Tags: concepts
Views: 6794

C++ 20 Techniques for Algorithmic Trading

Why do the biggest and most profitable trading firms use C++? In this webinar we will address this question and present one of the most anticipated features of C++20 standard: Ranges.

Read more
Views: 9878

Define Concepts

There are two ways to define a concept: You can combine existing concepts and compile-time predicates, or you can apply a requires expression in four different ways.

Read more
Views: 7730

Type Erasure

Type erasure based on templates is a pretty sophisticated technique. It allows you to bridge dynamic polymorphism (object orientation) with static polymorphism (templates).

Read more
Views: 22670

10 Days Left to Register Yourself for my Mentoring Program "Fundamentals for C++ Professionals"

The registration for my mentoring program, "Fundamentals for C++ Professionals", is still open until 17th April. The program starts on 22nd April.

Read more
Views: 3951

A std::advance Implementation with C++98, C++17, and C++20

In my last post, I presented a possible std::advance implementation based on tag dispatching. One of my readers mentioned that I could also implement std::advance based on constexpr if, or concepts. His right. So let's do it.

Read more
Views: 10687


Stay Informed about my Mentoring


English 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

Interactive Course: The All-in-One Guide to C++20

Subscribe to the newsletter (+ pdf bundle)

Blog archive

Source Code


Today 7114

Yesterday 6867

Week 21019

Month 7114

All 11302528

Currently are 324 guests and no members online

Kubik-Rubik Joomla! Extensions

Latest comments