constexpr Functions

Today, I continue my story about programming at compile time. After template metaprogramming, the type-traits library, today's topic is constexpr functions in particular.

Read more
Views: 6382

The Type-Traits Library: Optimization

The type-traits library has two main goals: correctness and optimization. Today, I write about optimization.

Read more
Views: 4962

The Type-Traits Library: Correctness

The two main goals of the type-traits library are very convincing: correctness and optimization. Today, I write about correctness.

Read more
Views: 4715

The Type-Traits Library: std::is_base_of

I finished the last article on the Type-Traits library with the challenge of explaining the std::is_base_of and std::is_convertible functions. Today I'm excited to present the answer from Mr. Helmut Zeisel.

Read more
Views: 5038

The Type-Traits Library: Type Comparisons

In my last post "The Type-Traits Library: Type Checks" I introduced type checks at compile time with the type-traits library. Today, I write about type comparisons at compile time.

Read more
Views: 4236

The Type-Traits Library: Type Checks

The type-traits library is part of C++11 and supports type checks, type comparisons, and type modifications at compile-time. The library has more than 100 functions but grows with each new C++ standard release. Today, I present the type checks.

Read more
Views: 6623

Template Metaprogramming - Hybrid Programming

First of all, hybrid programming is not an official term. I created it to emphasize a very interesting aspect of templates. The difference between function arguments and template arguments.

Read more
Views: 6077

Template Metaprogramming - How it Works

In my last post "Template Metaprogramming - How it All Started", I wrote about the roots of template metaprogramming and presented the hello world of template metaprogramming: calculating the factorial of a number at compile time. In this post, I will write about, how template metaprogramming can be used to modify types at compile time.

Read more
Views: 5806

Template Metaprogramming - How it All Started

Metaprogramming is programming on programs. C++ applies metaprogramming at compile time. It started in C++98 with template metaprogramming, was formalized in C++11 with the type-traits library, and since C++11 has steadily improved. The main driving force is constant expressions. In this post, I want to write about its roots.

Read more
Views: 10512

Automatic Return Type (C++11/14/20)

I started my discussion about the  "Automatic Return Type (C++98)" in my last post. Today, I'm faced with the same challenge but solve it with C++11, C++14, and C++20.

Read more
Tags: auto
Views: 10127

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

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

Subscribe to the newsletter (+ pdf bundle)

Blog archive

Source Code

Visitors

Today 744

Yesterday 6623

Week 7367

Month 145759

All 9425782

Currently are 169 guests and no members online

Kubik-Rubik Joomla! Extensions

Latest comments