Modern C++
A New Standard
In 2011 the new C++ standard was accepted, after many years' work. Information about the standard:
The home of standard C++ | isocpp.org |
A good overview | en.wikipedia.org/wiki/C++11 |
Bjarne Stroustrup's C++11 FAQ | www.stroustrup.com/C++11FAQ.html |
API documentation | www.cplusplus.com/reference/ |
A nice map | fearlesscoder.blogspot.com/2012/01/c11-lands.html |
After C++-11, three newer versions of the standards have been accepted:
- C++-14, which is mostly a "bug fix" to C++11, correcting mistakes and omissions,
- C++17, which adds features to both the core language and the standard library, and
- C++20 which contains further additions to both the language and library, notably concepts which is something like a meta-type system for templates aimed at improving readability of code and error messages.
Compiling C++11
The recommended compiler in the course is g++, the GNU C++ compiler, or clang++ from the LLVM project. The student computers have both installed. To use the C++11 features you must give the option -std=c++11 on the command line.
Both compilers are C++11-feature complete. You can check the status on standard support for different compiler versions att https://gcc.gnu.org/projects/cxx-status.html and clang.llvm.org/cxx_status.html.