C ++, C'nin idare edemediği karmaşıklığı yönetmek için icat edildi. Örneğin, C ile ilgili yaygın bir sorun, "değişkenler için adların tükenmesi" (tam anlamıyla elbette alınmaması) olabilirdi çünkü kapsülleme, ad alanları vb. Yoktu.
Ayrıca, C'nin istisnaları yoktur, bu nedenle hata işleme çok hataya açıktır, çünkü kütüphane kullanıcısının her zaman işlevlerin dönüş değerlerini kontrol etmesine bağlıdır, ancak istisnalar dışında, kütüphane geliştiricisi program akışının durmasını garanti eden bir istisna atar.
C ++, yapıcının otomatik olarak derleyici tarafından çağrılan nesneleri başlatmasını sağlayarak yardımcı olur. Programcı tarafından başlatılması gereken C yapılarının aksine (bu nedenle başka bir hataya açık alan).
Son olarak, nesne yeniden kullanımı gibi OOP tarafından sunulan, kaynak kodunu tekrar kullanmanıza izin veren şablonlar ve jenerikler gibi genel programlama tabanlı kavramlar gibi pek çok başka avantaj vardır.
Ve burada listelemek için zamanımın çoğunu alacak başka şeyler de var.