Paul Krill
Editor at Large

C++ upgrade wins unanimous approval

news
Aug 16, 20113 mins

The ISO says that C++11 will support parallel algorithms and boast improved performance

With the recently approved upgrade to the C++ language, the ISO (International Organization for Standardization) is enabling developers to leverage capabilities for parallel algorithms and higher performance, the chair of the committee responsible for the language said on Tuesday.

C++11 is the first major new version of ISO C++, said Herb Sutter, chair of the ISO C++ standards committee. Featured in C++11 are lambda functions, which serve as a key enabler of emerging parallel algorithms and revolutionize the use of the existing Standard Template Library, said Sutter, also a principal architect for native languages at Microsoft. “What’s already there in the C++98 standard library will immediately become even easier to use,” he said. Move semantics in C++11, meanwhile, lead to higher performance. Concurrency features include types for portable, lock-free programming.

The final ballot for the C++ standard finished closed last Wednesday and was unanimously approved, Sutter said in his blog. C++11 has been referred to as C++0x and is to be published in a few weeks. The language, he said, is used for “just about everything — the world is built on C++.”

C++, including its C subset, is used to build the compilers and runtimes for virtually all competing languages, all major Web browsers, all major operating systems, Sutter said. It also is the main language used in Google and Facebook and the main language for nearly all Microsoft products, he said. “C++ is the language of choice for demanding applications in almost every application domain,” said Sutter.

C++ is a general-purpose language, stated C++ developer Henry Skoglund. “Most of the things that are new in this standard, I’d say, are important for systems development and compiler [development],” he said. Lamdba capabilities, asserted Skoglund, allow developers to “write more bug-free, less-verbose code.”

Also included in C++11 are auto and decltype functions, with auto providing convenience for type deductions and decltype enabling developers to get the strong type of any expression. Additionally, smart pointers, such as unique_ptr, offer standardized, automated memory management.

The next step for the C++ standard is for compilers to conform to it in the next year or two, Sutter said: “While that happens, the standards committee will continue to build on the great new language features already in C+11 by continuing to add to C++’s standard library so that a larger portable library (that does not require new language features beyond those already in C++11) will be available ‘in the box’ with every C++ implementation.” Also under consideration is another round of language extensions, such as template concepts or stronger C++11 lamdbas.

This article, “C++ upgrade wins unanimous approval,” was originally published at InfoWorld.com. Follow the latest developments in business technology news and get a digest of the key stories each day in the InfoWorld Daily newsletter. For the latest developments in business technology news, follow InfoWorld.com on Twitter.

Paul Krill

Paul Krill is editor at large at InfoWorld. Paul has been covering computer technology as a news and feature reporter for more than 35 years, including 30 years at InfoWorld. He has specialized in coverage of software development tools and technologies since the 1990s, and he continues to lead InfoWorld’s news coverage of software development platforms including Java and .NET and programming languages including JavaScript, TypeScript, PHP, Python, Ruby, Rust, and Go. Long trusted as a reporter who prioritizes accuracy, integrity, and the best interests of readers, Paul is sought out by technology companies and industry organizations who want to reach InfoWorld’s audience of software developers and other information technology professionals. Paul has won a “Best Technology News Coverage” award from IDG.

More from this author