I agree with this wholeheartedly, but I don't see why it should be the only reason to completely avoid C++ altogether. There're many other very nice windowing systems other than windows.h for C++, like QT, or even using SFML or SDL if you want to make a game. None of these redefine an int using a typedef (I think :P/>).
Plus Pharap, I'm curious. Your eternal hate for Java, does it originate from somewhere? I don't think such hate should go unjustified. I quite like Java's syntax and features (especially its standard library), although it is a bit too OOP heavy (classes for EVERYTHING is annoying), and runs so differently on each OS and hardware.
Also, command line FTW! :P/> IDEs are boring, do it the fun way :P/> Granted I'm on a mac, so it's probably easier than doing the same on Windows :P/>
I've never been able to set up anything like that on Code::Blocks, so beyond writing myself a C# wrapper (which admittedly I probably could manage) it's more a matter of laziness. Plus to be fair, you're less likely to experience version hell with Win32. ie "this is version 1.5.5 and to run it you'll need this dll, anywhere from version 4.2 to 6.7 except for versions 5.1 and 4.6 because they had some odd bugs…" etc etc
The syntax isn't too different from C#, but there are so many things it lacks that I use regularly. Events, Delegates, Lambda expressions.
Even more down to earth features like Enumerations, Structs (that go on the stack, not the heap) and, dare I go there - unsigned integers!
Plus I'd have no clue how to interop C/C++ with it, if that's even possible. I might be wrong, but I don't believe it has support for generics.
Also, I prefer the syntax of C#'s properties to Java's getter and setter methods (less of a language feature, more of a discipline programmers must enforce themselves).
As an added bonus, I used netbeans' swing library designer once. The generated code was hell compared to windows forms designer's generated code (which is full commented and hidden away in an overrided Initialize method).
For a full list of features Java lacks that I like, see here:
https://en.wikipedia.org/wiki/Comparison_of_C_Sharp_and_Java(Yeah I know, I'm being cruel, but your fancy graphics libraries won't sway me :P/>)
Adding new command line options to windows is easy, I'm just too lazy to do it and too lazy to put up with remembering console commands. I can list files, I can change file associations, occasionally I look a command up and forget about it, tbh it's generally quicker to write throwaway programs for anything I'd want to use the command line for :P/>
PS - Forgot to mention, Steam doesn't think jar files are executable, and exe files can't be rummaged through with 7Zip.