C++ has been at the receiving end in recent times about neither being a good low-level language nor being an effective high-level one. It is said that there is no case for C++ in today’s programming world. I agree that with evolution of programming languages, applicability of C++ is narrowing down, but it has still not vanished. Hypertable has a nice explanation of why C++ was chosen over Java. The rationale is specific to the context, but it is a good indication that C++ can offer a good combination of low-level control and high-level language features in memory and processor intensive applications.

May 29th, 2009 at 3:05 pm
Also of interest is my “When C is the Best” essay. I should note that I personally don’t like C++ very much, and prefer either plain ANSI C or alternatively something more high-level such as Perl. I suppose C++ has its use as a more convenient C with better abstractions, but it tends to be misused a lot.
A friend (who likes Object Pascal) told me that most of the software-development companies with extensive C++ codebases he encountered, encountered many problems and they kept blaming themselves instead of C++. There are some successful C++ projects out there, but I still feel that C++ is problematic.