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.