Man kann sich natürlich fragen, warum nicht gleich eine ganz neue Sprache entwickelt wurde. Zum einen liegt es daran, daß ursprünglich nur ein größeres Programmierprojekt Anlaß zur Erweiterung von C war. Als sich das Projekt weiterentwickelte, hätte man noch die Möglichkeit gehabt, eine neue Programmiersprache zu entwickeln, die die Probleme von C ausmerzt und nicht mehr zu C kompatibel wäre.
Dies wurde aber unterlassen. Vor allem weil in C schon sehr viel Code produziert worden war, insbesondere Libraries und Betriebssysteme. Dieser Code sollte erhalten bleiben. So ist C++ weitgehend kompatibel zu C entwickelt worden. Dies ist wohl auch mit ein Grund für den Erfolg von C++.
Nach einer kurzen Zeit einiger Inkompatibilitäten ist C++ inzwischen fast vollständig zu C kompatibel und der Erfolg von C++ hat sich sogar in einigen ANSI-C-Regeln niedergeschlagen. Die Früchte reifen also in beiden Sprachen.