templates

C++ Core Guidelines: Type Erasure with Templates

In the last post C++ Core Guidelines: Type Erasure, I presented two ways to implement type erasure: void pointers and object-orientation. In this post, I bridge dynamic polymorphism (object-orientation) with static polymorphism (templates) to get type erasure with templates.

Read more
Comments 3Views: 7465

C++ Core Guidelines: Type Erasure

,Rule "T.5: Combine generic and OO techniques to amplify their strengths, not their costs"  of the core guidelines to generic programming uses type erasure as an example. Type erasure? Really! Of course, it takes me two posts to explain this advanced template technique.

Read more
Add CommentViews: 19798

C++ Core Guidelines: Rules for Templates and Generic Programming

I give in this post an introduction to the rules for generic programming in C++. Generic programming is from my point of view the outstanding feature and the future of C++. Hence it follows, that this and the upcoming posts are about the future of C++.

Read more
Tags: templates
Comments 1Views: 6162

C++ Core Guidelines: More about Control Structures

My last German post C++ Core Guidelines: To Switch or not to Switch, that is the Question got a lot of attention. To use a hash table instead of a switch statement seems to be a highly emotional topic. So I change my original plan. Today, I will present different kinds of control structures. I will start with the if and switch statements, continue with the hash table, and end with dynamic and static polymorphism. Additionally, I will mark a few remarks about performance and maintainability. 

Read more
Add CommentViews: 13014

Defining Concepts

I wrote a few posts about using concepts. Concepts are a named set of requirements. Let's define a few concepts in this post.

Read more
Comments 2Views: 11261

Placeholders - The Second

The unification of templates, concepts, and placeholders goes on. This time, I will have a closer look at constrained (concepts) and unconstrained (auto) placeholders in the context of templates.

Read more
Add CommentViews: 7322

Concepts - Placeholders

C++11 has with auto unconstrained placeholders. You can use concepts in C++20 as constrained placeholders. What seems at first glimpse not so thrilling is for me the decisive quantum leap. C++ templates will become an easy to use C++ feature.

Read more
Add CommentViews: 9045

C++ is Lazy: CRTP

In my previous post Recursion, List Manipulation and Lazy Evaluation I wrote about the characteristics of functional programming:  The story about lazy evaluation in C++ is short. Sorry to say but I have forgotten templates. The two advanced techniques CRTP and expression templates are based on lazy evaluation.

Read more
Tags: templates
Comments 4Views: 31428

Concepts

We stay in the year 2020. With high probability we will get concepts. Of course, waterproof statements about the future are difficult but the statement is from Bjarne Stroustrup (Meeting C++ 2016 at Berlin).

Read more
Comments 2Views: 10955

Subscribe to the newsletter (+ pdf bundle)

Blog archive

Source Code

Visitors

Today 670

All 1586127

Currently are 221 guests and no members online

Kubik-Rubik Joomla! Extensions

Latest comments