New Revision of C++ Programming Language: C++11

Orange Pi Development Boards

The Final International Draft standard (FCD) was unanimously approved on August 12th, 2011. The standard should be published this year. The draft name of the standard is C++0x, but since it will be published this year, it should probably renamed C++11, and if there are delays in its publication it could well be renamed to C++12.

You can download the 1334 pages “Working Draft, Standard for Programming Language C++” to get the full details.

If you don’t feel like going thru that massive document, but still want to learn about C++0x, I recommend you check the C++0x FAQ on Bjarne Stroustrup (The creator of C++) homepage.

Here are some the new features and improvements:

  • initializer-lists – Initializer lists are not just for arrays any more
  • uniform initialization syntax and semantics
  • template aliases (previously know as template typedef)
  • rvalue references
  • defaulted and deleted functions
  • variadic templates
  • auto – deduction of a type from an initializer
  • inherited constructors –
  • decltype – the type of an expression (replacement for typeof)

According to Stroustrup, these enhancements are sufficient to make C++0x feel like a new language.

 

Support CNX Software - Donate via PayPal or become a Patron on Patreon

1
Leave a Reply

avatar
1 Comment threads
0 Thread replies
0 Followers
 
Most reacted comment
Hottest comment thread
0 Comment authors
Cross Compiling Boost C++ Libraries for ARM Recent comment authors
  Subscribe  
newest oldest most voted
Notify of
trackback

[…] Boost provides free peer-reviewed portable C++ source libraries. Ten Boost libraries are already included in the C++ Standards Committee’s Library Technical Report and will be in the new C++11 Standard. […]