Learning C++11 reminds me of meeting a friend you haven’t seen in years where they seem the same at first but as you catch up you find out how much has really changed. In C++’s case the changes are subtle but significant. Rather than point out the differences myself I thought I would list out my favorite resources I have found for learning C++11 and would love to hear more about where you are learning it. The following is an attempt at doing what you should look at in order.
- The Biggest Changes in C++11 (and why you should care)
- GoingNative 2012 – Day 1 Keynote – Bjarne Stroustup – C++ Style
- GoingNative 2012 – Day 2 Keynote – Herb Sutter – C++11, VC++11 and Beyond
- The New C++ (C++11) – By Scott Meyers
- After the above I would go through all the content there is on Channel9 by Stephan T. Lavavej
That should be a few hours worth of learning. Obviously you need a compiler to play with these features, check out the big supported feature list here or here. I have played with the language features in Visual Studio 2011 Beta and I will soon be upgrading my Mac to 10.7 so I can enjoy the benefits of C++11 on my mac as well with Clang. On 10.6 I can use the language features but it doesn’t seem to allow linking to the standard libraries with it.
To me the biggest language changes are in how much easier doing multicore and multithreaded programming is with things like PPL or Intel’s TBB libraries.
I have also had some fun checking out the Intel ISPC compiler and may do a subsequent post on it as well.