With the arrival of the new C++ standard last year, C++ has changed. In a sense C++11 is a new language while keeping backward compatibility with the old standards. You can run any valid C++98 or C++2003 program through a C++11 compiler and the code will pass without a problem, however if you take a modern piece of C++ code this could look quite different from the equivalent C++ code written ten years ago.
The C++ Standard Library: A Tutorial and Reference (2nd Edition) by N. M. Josuttis was updated to reflect the new C++11 standard. The author presents in detail the changes and additions from the Standard C++ Library with a particular focus on: iterators, containers and STL algorithms. A large set of exercises that exemplify each aspect of the library presented in the book is also available on the book's website http://www.cppstdlib.com/.
At the time of this writing, there is no compiler that fully implements the new standard. If you are Windows user, Visual Studio 11 implements most of the new C++11 standard. On Linux, you can build from sources the last gcc-4.7. On a Mac computer you could use Clang or compile from source the last version of gcc.
If you are C++ beginner you can consult my list of C++ books for beginners.blog comments powered by Disqus