The 25 days of C++mas - December 3 - survey of favorite C++11 features

By: David Intersimone

Abstract: David I shares the results of his survey asking our C++Builder customers and CodeRage 7 C++ conference registrants to rank order their favorite C++11 language and library features

This is a copy of a blog post from David I's Sip from the Firehose blog. Click to blog post title below to see the original blog post and comments.

  The 25 days of C++mas - December 3 - survey of favorite C++11 features

A few weeks ago, I created a survey asking our C++Builder customers and CodeRage 7 C++ conference registrants to rank order their favorite C++11 language and library features.  Thank you to all of those who have taken the survey so far.

The ranked survey results [1] as of December 3, 2012 are:

    C++11 Feature ISO-C++11 Doc
    auto-typed variables N1984
    Initializer lists N2672
    Rvalue references N2118
    Non-static data member initializers N2756
    Initialization of class objects by rvalues N1610
    Variadic templates N2242
    Lambda Expressions N2927
    Static assertions N1720
    Rvalue references for *this N2439
    Extending variadic template template parameters N2555
    Multi-declarator auto N1737
    Null pointer constant N2431
    Strongly-typed enums N2347
    Declared type of an expression N2343
    Removal of auto as a storage-class specifier N2546
    New function declarator syntax N2541
    Range-based for N2930
    Default template arguments for function templates DR226
    Forward declarations for enums N2764
    Delegating constructors N1986
    Inheriting constructors [2] N2540
    Right angle brackets N1757
    Unicode string literals N2442
    Incomplete return types N3276
    Explicit conversion operators N2437
    Templates Aliases N2258
    Solving the SFINAE problem for expressions N2634
    Raw string literals N2442
    Generalized attributes N2761
    Generalized constant expressions N2235
    Alignment support N2341
    Extern templates N1987
    New character types N2249
    Defaulted functions N2346
    Deleted functions N2346
    Atomic operations N2427
    Explicit virtual overrides N2928
    User-defined literals N2765
    Universal character names in literals N2170
    Standard Layout Types N2342
    Extending sizeof N2253
    long long N1811
    Defining move special member functions N3053
    Unrestricted unions N2544
    Extended friend declarations N1791
    Local and unnamed types as template arguments N2657
    Inline namespaces N2535
    Propagating exceptions N2179
    Strong Compare and Exchange N2748
    Concepts [not part of C++11 yet] N2773
    Sequence points N2239
    Minimal support for garbage collection and reachability-based leak detection N2670
    Concurrency Memory model N2429
    Allowing move constructors to throw [noexcept] N3050
    Thread local storage N2659
    Adding extended integral types N1988
    Bidirectional Fences N2752
    C99 preprocessor N1653
    Dynamic initialization and destruction with concurrency N2660
    Data-dependency ordering: atomics and memory model N2664
    Allow atomics use in signal handlers N2547
    Abandoning a process and at_quick_exit N2440
    __func__ predefined identifier N2340

Notes about the survey results:  [1] "Inheriting Constructors" (N2540) is missing as a choice in the ranked survey.  Unfortunately I cannot add it to the survey, so I placed it right after the results for "Delegating Constructors" (N1986).  [2] The results for this survey are based on those who choose to take the survey.

CodeRage 7 C++ Conference, December 10-12, 2012

The CodeRage 7 C++ conference starts next Monday, December 10, 2012 at 6am Pacific Standard Time (14:00 UTC).  There are 3 days of C++ sessions including my special live, online conversation with Bjarne Stroustrup at 8am PST (16:00 UTC) on Monday.  Some of the C++ sessions you won’t want to miss are included in my blog post on November 21 -

Happy C++mas!

During the first 25 days of December leading up to Christmas, I will blog about the upcoming release of the C++Builder 64-bit compiler for Microsoft Windows and C++Builder XE3support for building VCL and FireMonkey 2 applications.

Server Response from: ETNASC04