Yo me pregunto, en aplicaciones donde no es un requisito primordial que tenga un consumo menor de recursos (NO significa que sea más rápida que otra que consume más, ojo), ¿es necesario elegir C/C++ sobre otro lenguaje que te provee mucha más productividad? Véase Java, C#, Scala, Groovy, PHP, Python, Ruby, entre otros.
El desarrollo en la actualidad tiene como punto clave ser productivo, y la productividad aunque es parte del programador, viene mucho más por parte del lenguaje, librerías y frameworks que existan para él. Desarrollar un punto de venta en C/C++ es más complejo que con Java o C# (o VB.NET). Toma más tiempo, es más propenso a errores (como BufferOverFlow), hay que estar pediente de los punteros, liberar memoria en el momento adecuado, en fin, cosas que en lenguajes modernos no son necesarios, y ni hablar del mantenimiento.
Además, con el hardware moderno, que en unos 2-5 años no vendrán ordenadores con menos de 8GB de RAM, pensar exclusivamente en el rendimiento que puede tener nuestra aplicación, no creo que sea buena idea. Es importante sí, ya que como programador es nuestro deber hacer que la aplicación consuma los recursos necesarios pero sin exceder, pero no es un punto vital en nuestras aplicaciones. Para Kernels, SOs, sistemas inmensos donde prime el rendimiento, no hay mejor opción que C/C++, pero para aplicaciones normales, no es la mejor opción.
Un saludo.