Templates: Misconceptions and Surprises
I often teach the basics of templates. Templates are special. Therefore, I encounter many misconceptions which cause surprises. Here are a few of them.
This author has not written his bio yet.
But we are proud to say that Rainer Grimm contributed 691 entries already.
I often teach the basics of templates. Templates are special. Therefore, I encounter many misconceptions which cause surprises. Here are a few of them.
Today, I finish the C++ core guidelines rules to templates with a big surprise for many C++ developers. I write about the specialization of function templates.
Today, I write about the few remaining rules to templates. Because a collective name is missing, they put the heterogeneous rules to templates in the section other. The rules are about best practices but also about surprises.
My mini-series about programming at compile time started with template metaprogramming, continued with the type-traits library, and ended today with constant expressions (constexpr).
The type-traits library supports type checks, type comparisons, and type modifications at compile time. Right! Today, I write about type modifications at compile time.
My journey through programming at compile time began in the last posts with template metaprogramming. Today, I jumped from C++98 to C++11. This is a jump to the type-traits library which is template metaprogramming in a standardized way.
Today, I will continue my introduction to programming at compile time. The last post started with template metaprogramming. Here is where I pick up today and finish.
Yes, you read it correctly. Today, I write about template metaprogramming, programming with types and not values.
In my concurrency class, I use more than 60 programs. Most of the programs consist of a single source file. I’m quite curious if the static code analysis tool CppDepend can find any issues in my sources. Let me try it out.
Variadic templates are a typical feature of C++: from the user’s perspective, they are easy to use, but from the implementor’s perspective, they look pretty scary. Today’s post is mainly about the implementor’s perspective.