Lambdas are a nice recent addition to C++. They are cool, they are hip, and they tend to be overused and misused.
Modern C++ Features
Features added in C++11 and later
decltype and std::declval are two features that go hand in hand and are most useful in template metaprogramming and in conjunction with the use of type deduction via auto, e.g. […]
Today’s post is the first guest post on this blog. Jonathan Boccara tells us about some exciting features that will hit the standard library after C++17: Ranges. Jonathan develops and teaches […]
With the increasing standardization of attributes, we get the opportunity to make our code clearer not only to other humans but also to the compiler and other tools.
Trailing return types are an oddity in C++ – we should use them only when necessary.
I gave an introduction to variadic templates last week. Today I will talk about some more features that have or will be added in that area in C++11, 14 and […]
Generic programming and metaprogramming with templates always have been one of the features that set C++ apart from most other languages. With C++11, variadic templates added even more possibilities in […]
User-defined literals are a convenient feature added in C++11.
In the last two weeks I have written about the basics of compile time constants and calculation with those constants. This week I conclude this mini series with the keyword […]
Covariance can be a useful concept, e.g. when implementing the abstract factory design pattern. However, in modern C++, we should return smart pointers that are not recognized to be covariant like […]