Main features of C++ that C doesn't have Edit
Object oriented programming support Edit
Object oriented programming is mainly a software design philosophy. However, programming languages often support this paradigm. The first reason for C++ was that: adding objects and classes to C.
The language fully supports the concept of class: it has virtual, abstract and static (class) methods, instance and class variables. Also, a class may overload operators and methods. C++ supports function and class templates.
Resizable arrays and proper strings Edit
Because of the OOP support, things like the vector and string class are available to make programming with C++ much easier than C.