C++11 is officially released, goodbye C++0x

Posted by Peter J. Jones on

The ISO/IEC C++ committee made the announcement that the latest version of the official C++ standard (C++11) is done, the first major change to C++ since 1998. The announcement quotes Herb Sutter:

…and now with C++11’s improvements that incorporate many of the best features of managed languages, modern C++ code is as clean and safe as code written other modern languages, as well as fast with performance by default and full access to the underlying system whenever you need it.

However you feel about C++, there’s something to be said about being an ISO standard and having a body of passionate people to guide a language through the tricky waters of backwards compatibility. I remember installing a maintenance release of an interpreted language in order to fix a bug and discovered later that this micro version included a syntax change that wasn’t backwards compatible and broke all my production code. That was the beginning of the end for Perl for me.

So what’s new, and what changed in C++11? Actually, the list of changes is pretty long, including a new lambda syntax, regular expressions, threading, and finally a resolution to the closing right angle parsing ambiguity. Danny Kalev wrote a great article back in June that covers some of the major changes in C++11. There’s also a compiler compatibility chart to get you started.

About the Author

Peter J. Jones has been a professional software engineer for over 20 years and is deeply passionate about helping programmers improve the skills of their craft. He is the author of Effective Ruby: 48 Specific Ways to Write Better Ruby. Peter can be reached through our contact page or his twitter account.