C++11 - Resources

C++11 is a version of language standard for C++. Previous name for this standard: C++0x. Approved by ISO in 2011 (official name: ISO/IEC 14882:2011). This is current (2014) standard, but new standard - C++14 is already approved. You can recognize C++11 style programs by lambda expressions, auto keyword used for type declarations and range-based for ("for each" known from other languages).

Please note that there is no standard way of detecting C++11 support during compilation. Macro "__cplusplus" should be equal to at least "201103L" as specified in standard, but it is not implemented yet (GCC 4.6 => value = 1).

Workaround must depend on compiler-specific solutions like in the following code:

#if defined(__GXX_EXPERIMENTAL_CXX0X) || (__cplusplus >= 201103L)
#include <cstdint>
#else
#include <stdint.h>
#endif

Introductory materials

Text

Video

Lambda expressions

Regular expressions

Bind

Threads

High level multi-threading

Utilities

Books

See also

Share

follow