As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
While I am excited that C++0x will be much more fun to program in than C++98, I sometimes feel that some of the new features leave something important to be desired.
For e.g. initializer lists can not be deduced as references to arrays, variadic templates don t allow for member packs or arbitrary expression expansion, local classes can t be templates or contain templates or have in-class member initializers, lambdas can t be templates, constexpr can t help with compile time processing of string literals, user defined string literals can t be templates (whereas user defined number literals can be), decltype behaves significantly different in certain cases based on whether you parenthesize its operand or not (would have preferred a separate exprtype ).
I recognize that the standard s committee had to make some very difficult choices and compromises (since it really isn t meant to innovate, and because it has fairly limited resources), and I respect them deeply and am very grateful to them for doing what they do. This post isn t meant to denigrate their efforts (I am very much looking forward to using C++0x) - but to gauge how strongly others feel about some of these features.
With that in mind, I pose to you the following questions:
1) What are the new features that you are completely satisfied with?
2) What are the new features that you are partially satisfied with - and what would it take to make you more satisfied?
3) What are the new features that you wish had definitely not been added?
For a list of all the features, I will refer you to Stroustrup s List.
Thanks!