C is a good choice where performance is critical for small or large programs. C++ used like C is comparable.
Perl or Python are good choices for short programs where ease of development and programming practices resilient to buffer-overflow style bugs are more important than performance.
Java is a good choice for large, complex programs where safe and secure programming practices are more important than micro-optimized performance.
See what's missing from that picture? Any role where C++ used with the low-performance safe practices abstractions is a better choice than something else.