Show pageOld revisionsBacklinksBack to top This page is read only. You can view the source, but not change it. Ask your administrator if you think this is wrong. ===== Overview ===== List of new/changed features in C++11, general links and feature-specific internal pages. ===== Links to relevant external pages ===== * [[https://isocpp.org|ISO C++: Home of Standard C++]] * [[https://isocpp.org/wiki/faq/cpp11|ISO C++11 Overview]] * [[https://isocpp.org/faq|ISO C++ Super-FAQ]] * [[http://www.stroustrup.com/C++11FAQ.html#language|Bjarne's C++11 FAQ]] (obsoleted by ISO C++ Super-FAQ above) * [[https://www.codeproject.com/Articles/570638/Ten-Cplusplus-Features-Every-Cplusplus-Developer|Ten C++11 Features Every C++ Developer Should Use]] * [[http://blog.kavinyao.com/2014/02/cpp11-features/|C++11 Features Every C++ Programmer Should Know]] * [[https://blog.smartbear.com/development/the-biggest-changes-in-c11-and-why-you-should-care/|The Biggest Changes in C++11 (and Why You Should Care)]] * [[https://hackernoon.com/learn-from-folly-source-code-the-new-c-11-features-121823fdd525|Learn from Folly source code the new C++11 features.]] * [[https://www.slideshare.net/goldshtn/whats-new-in-c-11|What's New in C++11]] * [[http://en.cppreference.com/w/cpp/compiler_support#cpp11|C++11 compiler support]] ===== C++11 features ===== * [[C++11 keywords]] * [[C++11 data types]] * [[C++11 language features]] ===== Ongoing hierarchical list of new C++11 features ===== Constantly being shuffled around; this list will be used as the basis for the more specific pages listed above. ==== Misc fixes ==== * right angle brackets ==== Data types and literals ==== * ''alignas''/''alignof'' * ''decltype'' * ''char16_t'', ''char32_t'' * ''nullptr'' * New string literals (Unicode, raw) * User-defined literals * ''auto'' type deduction * ''constexpr'' (here?) * type traits Any other new character types? ==== General language features ==== * Initializer lists * Overloading and "= delete" for non-member functions * Trailing return types (mostly for templates) ==== Looping ==== * Range for loops * for_each, non-member begin() and end() ==== Namespaces ==== * Inline namespaces ==== Enumeration types ==== * scoped enums * forward enum declarations * strongly-typed enums (n2347.pdf) ==== Class "life cycle" methods ==== * Delegating constructors * Inheriting constructors * Move semantics (tied to rvalues) * "''= default''" * "''= delete''" ==== Rvalue references ==== * Basic rvalue references * Rvalue references for ''*this'' ==== Class features ==== * Non-static data member initializers * Explicit conversion operators * Extended friend declarations ==== Inheritance issues ==== * ''override'' * ''final'' ==== Smart pointers ==== * ''auto_ptr'' (deprecated) * ''unique_ptr'' * ''shared_ptr'' * ''weak_ptr'' ==== Templates ==== * Template aliases * variadic templates (parameter pack, sizeof...) * [[https://www.ibm.com/developerworks/community/blogs/5894415f-be62-4bc0-81c5-3956e82276f3/entry/introduction_to_the_c_11_feature_trailing_return_types?lang=en|Trailing return types]] * extern template (explicit instantiation declaration) * Extended friend declaration * Local and unnamed types as template parameters(?) ==== Lambda expressions ==== ==== Exceptions ==== * ''noexcept'' ==== Debugging ==== * static_assert() ==== Standard Library ==== * With the approval of C++11, TR1 is officially incorporated into standard C++ standard, along with new libraries that have been added since TR1. * threading library * relies heavily on move semantics * New algorithms [[https://blog.smartbear.com/development/the-biggest-changes-in-c11-and-why-you-should-care/|here]] * tuple ==== Concurrency ==== * Atomic operations * Threads and thread-local storage * async() ==== Others ==== * extern template * Regular expressions * C99 preprocessor (''__cplusplus''??) * Unrestricted unions * Attributes * ref-qualifiers (move semantics?) * Dynamic pointer safty (garbage collection) * I/O manipulators c_11_features.txt Last modified: 2018/02/02 09:23by rpjday