Difference between revisions of "C++11 in Hall D Online"
m |
m |
||
Line 11: | Line 11: | ||
− | + | ==Safety== | |
− | override | + | '''override''' |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
+ | '''nullptr''' | ||
− | ''' | + | '''static assert and type traits''' |
− | auto | + | '''smart pointers''' |
− | range-for | + | |
− | initializer lists | + | '''move semantics''' |
− | constructor chaining | + | |
− | lambdas | + | |
− | tuples | + | |
− | new algorithms | + | ==Convenience== |
− | regular expressions | + | |
+ | '''auto''' | ||
+ | |||
+ | '''range-for''' | ||
+ | |||
+ | '''initializer lists''' | ||
+ | |||
+ | '''constructor chaining''' | ||
+ | |||
+ | '''thread library''' | ||
+ | |||
+ | '''lambdas''' | ||
+ | |||
+ | '''tuples''' | ||
+ | |||
+ | '''new algorithms''' | ||
+ | |||
+ | '''regular expressions''' |
Revision as of 15:50, 11 July 2013
Below I list a number of new C++11 features that should be interesting for use in the Hall D Online.
The most important ones concern programming safety, i.e. they plug safety loopholes in C++ that have been there since the beginning. The second type concern programming convenience, i.e. they make the code easier to write and understand.
Although we do not have any hard-and-fast programming rules for the online, I strongly feel the safety features should be used in all new code. I recommend use of the convenience features, but this is a personal decision. Even if you don't use them you should be familiar with them since they will appear in online code written by others.
Note that I take it for granted the old C++98 features will be used regularly (e.g. the STL).
My discussion below is brief. For a comprehensive discussion of C++11 see the Wikipedia article on C++11. See also the article on Ten C++11 Features Every C++ Developer Should Use.
Safety
override
nullptr
static assert and type traits
smart pointers
move semantics
Convenience
auto
range-for
initializer lists
constructor chaining
thread library
lambdas
tuples
new algorithms
regular expressions