C++14 is the default starting in GCC 6.1, released April 2016.
C++14 is the default starting in Clang 6.0, released March 2018.
We had minimal problems* with using C++11 features by default this semester in some of the labs (see: Lab 6 <chrono> and Lab 11 <random>).
So, I think it's safe (and beneficial) to teach and use C++11/14 features as much as possible rather than relying on older functionality.
This PR updates both the slides and the labs.
Notably:
nullptr is much safer than NULL (cannot assign nullptr to non-pointers)
stoi works with std::strings
C-style arrays replaced with std::arrays
* Some Clang versions on Mac seem to not like nested templates without spaces, but that's very minor and they were able to figure it out by themselves every time.
C++14 is the default starting in GCC 6.1, released April 2016. C++14 is the default starting in Clang 6.0, released March 2018.
We had minimal problems* with using C++11 features by default this semester in some of the labs (see: Lab 6
<chrono>
and Lab 11<random>
). So, I think it's safe (and beneficial) to teach and use C++11/14 features as much as possible rather than relying on older functionality. This PR updates both the slides and the labs.Notably:
nullptr
to non-pointers)* Some Clang versions on Mac seem to not like nested templates without spaces, but that's very minor and they were able to figure it out by themselves every time.