New C++ Features Voted In By C++17 Standards Committee (reddit.com)
New submitter lefticus writes: The upcoming C++17 standard has reached Committee Draft stage, having been voted on in the standards committee meeting in Oulu, Finland this Saturday. This makes C++17 now feature complete, with many new interesting features such as if initializers and structured bindings having been voted in at this meeting.
An [audio] interview with the C++ committee chair, Herb Sutter, about the status of C++17 has also been posted.
An [audio] interview with the C++ committee chair, Herb Sutter, about the status of C++17 has also been posted.
C++ needed more features. Some C++ books aren't even 1000 pages long.
I look back fondly at "c with objects". At least I could decipher the error messages.
I appreciate the idea behind if initializer. This is actually a somewhat common pattern.
if (MyClass *p = getMyClassOrNull() {
p->doYourThing();
}
But I fear using initializer statements easily gets too long for a line, and couldn't it already be done with the comma operator?
What are you trying to say? That they should rush in features that haven't been thought through? That they should put half-arsed or broken features in place just to say that they have? That they should then support these broken features for decades, since that's how long C++ projects tend to live?
Look, if you want a language with buzzword features thrown in left and right, with changes to these features happening just about every release, then maybe a programming language like Rust is what you're looking for. C++, on the other hand, is a language meant for professionals to use when developing complex systems that won't just be used next week, but will be used 15 or 20 years from now, assuming they aren't still being used long after that. Those standardizing C++ have a huge responsibility on their shoulders. They can't goof around with C++. If a change is made to the language, it has to be thought out thoroughly and it has to be the right thing to do.
"IF you trust the language to prevent you from making mistakes, you're going to have mistakes all over your code. Because no language can do that."
"First they came for the slanderers and i said nothing."