Louis Dionne - Keynote Meeting C++ 2016 - C++ Metaprogramming: evolution and future direction
And the second keynote of Meeting C++ 2016 is on youtube:
C++ Metaprogramming: evolution and future direction
by Louis Dionne
March 19-21, Madrid, Spain
April 1-4, Bristol, UK
June 16-21, Sofia, Bulgaria
By Meeting C++ | Dec 5, 2016 08:23 AM | Tags: tmp metaprogramming intermediate experimental c++20 c++17 c++14 advanced
And the second keynote of Meeting C++ 2016 is on youtube:
C++ Metaprogramming: evolution and future direction
by Louis Dionne
By Adrien Hamelin | Nov 29, 2016 02:25 PM | Tags: intermediate
Something we should be aware of:
The One-Definition Rule
by Andrzej Krzemieński
From the article:
We have been hit by the same bug twice already this year. It ends in a crash, and it took developers days to find it (in each case), even though it is reproducible on each run of unit tests. The code, after significant simplifications, looks like this:
namespace tests { struct Fixture { std::vector<int> v1; std::vector<int> v2; static Fixture create(); }; TEST_CASE(test1) { auto fixture = Fixture::create(); std::cout << "running test1"; } }
By Adrien Hamelin | Nov 29, 2016 01:57 PM | Tags: intermediate community
The series continue:
Why you should use Boost.MultiIndex (Part II)
by David Gross
From the article:
A few weeks ago, I posted the first part of this article, where I explained the advantages of Boost.MultiIndex over the standard containers when you need to have multiple views on a set of data.
In this second part, I would like to talk about the benefits you can get from using Boost.MultiIndex as a single-index hash table, as a replacement of
std::unordered_map
.One interesting and powerful aspect of Boost.MultiIndex is that it allows you to add an index of type T, where T is different from the stored type. And it is more frequent and useful that you could think.
By Marco Arena | Nov 26, 2016 05:46 AM | Tags: visual studio intermediate c++17
In this article, Marius shortly looks at the new standard library features from Visual C++ 2017:
New standard library features in Visual C++ 2017 RC
by Marius Bancila
From the article:
The new Visual C++ 2017, currently in release candidate phase, provides a series of updates and fixes to both the C++ compiler and the standard library...
By Adrien Hamelin | Nov 23, 2016 12:36 PM | Tags: intermediate c++14
Compilation time computations are good!
Demystifying constexpr
by Edouard from quasardb
From the article:
C++ 11 and C++ 14 came with a lot of new features. People tend to focus on lambdas and rvalue references, but today I’d like to talk about constexpr.
In this post we'll only talk about constant expressions as in C++ 14. There is absolutely no point to restrict yourself to C++ 11 in 2016. C++ 14 is really C++ 11 Service Pack 1, so if you missed the update, go straight to C++ 14!
By Adrien Hamelin | Nov 22, 2016 01:12 PM | Tags: intermediate experimental
Did you know?
More About Variadic Templates
by Arne Mertz
From the article:
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 17.
By Jason Turner | Nov 22, 2016 10:08 AM | Tags: intermediate c++17
Episode 38 of C++ Weekly.
C++17's Class Template Argument Type Deduction
by Jason Turner
About the show:
In this episode Jason looks at C++17's class template argument type deduction and what its capabilities are. Some limitations and possible gotchas of usage are also discussed.
By Adrien Hamelin | Nov 9, 2016 01:18 PM | Tags: intermediate c++11
Variadics explained:
Modern C++ Features – Variadic Templates
by Arne Mertz
From the article:
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 that area to the language...
By Adrien Hamelin | Nov 4, 2016 12:53 PM | Tags: intermediate experimental
Are the rules clear to you?
Getting your head around auto’s type-deduction rules
by Glennan Carnie
From the article:
Automatic type-deduction is perhaps one of the more divisive features of Modern C++. At its core it’s a straightforward concept: let the compiler deduce the type of an object from its initialiser. Used in the right way this can improve the readability and maintainability of your code.
However, because auto is based on template type-deduction rules there are some subtleties that can catch the unwary programmer.
In this article we’ll have a look at auto in the context of the template type-deduction rules to see where all these subtleties come from...
By Meeting C++ | Nov 4, 2016 03:46 AM | Tags: intermediate c++11 basics
A blogpost on how I randomized the student selection for Meeting C++ 2016
Randomizing a CSV File with Standard C++
by Jens Weller
From the article:
For this years student program I had to come up with a way to randomly select n students from all applicants. I wanted to do this in a clean and nice C++ program. So here it is...