C++ supports (almost) all the features of C. Like C, C++ allows programmers to manage the memory directly, to develop efficient programs. C++ is Object Oriented Programming Language. C++ enhances the procedural–oriented C language with the object–oriented extension. The Object Oriented extension facilitates design, reuse and maintenance for complex software. C++ introduces generic programming, via the so–called template. You can use these templates in our application. C++ provides a huge set of reusable standard libraries, in particular, the Standard Template Library (STL).
1) Classes: classes are used to create user defined data types. In other words the class is collection of data member and member function. The objects are the instances of classes.
2) Inheritance: Inheritance use to code reusability. in inheritance we use property of another class in other class
3) Data Abstraction and Encapsulation: Encapsulation means binding data and function in other words wrapping up of data in single entity is known as Encapsulation. This means the data is not accessible to outside world. Abstraction can be defined as the act of representing essential features hiding background details.
4) Polymorphism: it particular function called depends on object type.
5) Dynamic Binding: It means that the linking of a procedure call to code to be executed in response to the call. A function call depends on polymorphic reference depends on the dynamic type that reference.
Specification: C++ Programming – Beginners to Beyond