http://msdn.microsoft.com/en-us/library/hh279654.aspx
看看你是古代还是现代Cpper重点强调
-
Stack-based scope instead of heap or static global scope.
-
Auto type inference instead of explicit type names.
-
Smart pointers instead of raw pointers.
-
std::string and std::wstring types (see <string>) instead of raw char[] arrays.
-
Standard template library (STL) containers like vector, list, and map instead of raw arrays or custom containers. See <vector>, <list>, and <map>.
-
STL algorithms instead of manually coded ones.
-
Exceptions, to report and handle error conditions.
-
Lock-free inter-thread communication using STL std::atomic<> (see <atomic>) instead of other inter-thread communication mechanisms.
-
Inline lambda functions instead of small functions implemented separately.
-
Range-based for loops to write more robust loops that work with arrays, STL containers, and Windows Runtime collections in the form for ( for-range-declaration : expression ). This is part of the Core Language support. For more information, see Range-based for Statement (C++).