I was trying to point out that limiting yourself to one style of programming (Java) isn't going to help you in the long run.
Which brings us back to the point of my initial post. If you already know a single dispatch static container language you'll get more mileage (WRT how you think about programming) out of learning something very different. And if you learn a few and you'll be able to grok the basics of pretty much any language by skimming the specification.
Is it even used for games as much as people claim?
Yes it is.
I'm going to pick a strange argument and say that C++ is on it's way out and the only people who still use it are those maintaining legacy code and those too ignorant to go and learn something else.
I'd love for that dream to be true, but it's just a dream.
Also keep in mind that C++ code might look correct, compiles and even runs, but could be still be very wrong...
Scratch the "C++" and replace it with any language you choose.
Hold on kids. Java isn't a very high level language.
Hold on old man. Why even bother posting this. Java is higher level than C/C++ and that's what we are discussing right now.
I was discussing languages in general. C is a low level language. I think most people would agree with that. Languages like Java and C++ are one step up from C. They basically (from a logical standpoint) automatically manage concatenation of a pair of structures for you and toss is a few extra bells-and-whistles. They certainly qualify as high level languages, but they are not very far into the high level realm...and thus the "very" part of my comment.
It is all relative, to each their own, but in the context of this discussion Java is considered high level and C/C++ low level, so lets keep it like so.
Of course it's relative, but it would be easy to argue that C++ is a higher level language than Java and that people are just tricked by the fact that C++ allow lower-level functionality as well. Compare the current versions (C++11 vs. Java 7) and list high level features and you'll see. For me high level implies higher level reasoning and the ability to form understandable code with less work.