Comment by zlfn
5 hours ago
C++ seems to be constantly getting complicated. If the major version were to change, there wouldn't be any need for backward compatibility with the existing code, and it would have been okay to delete that syntax while creating an automatic formatter.
>If the major version were to change, there wouldn't be any need for backward compatibility with the existing code,
I have no idea where you get this idea from. I expect gcc v28 to be able to compile C++ from 2008, and I'm not alone in that.
I completely agree with you.
That said, I wish code written for gcc v28 didn't have to be binary compatible with C++ that was last compiled in 2008...
Are you suggesting we move to C++++?
It's already there. It's called C#
“#” is just two “+”. Count the lines.
Well, C# also has its quirks already. Like the crippled finalizers which are never to be used. If the IDisposable interface had been correctly designed, finalizers could become be the "public void Dispose(void)". Or the manual passing of Task in case of async methods, which is... kinda smelly.
5 replies →
Personally I like C+. Picking the nice parts of C++, but skipping all the nonsense. I just wish C++ hadn't deliberately screwed up designated initializers with mandatory ordering. The C version of it that allows out-of-order assignments is clearly superior.
Didn't you read the article? That form is deprecated. The recommended one is C,++,++
You clearly didn't read it either. Going forward, it will be C++...
I mean this is extremely minor, but the more incompatibility you create the slower the uptake will be. In the extreme you could create a Python 2->3 situation over old syntax.