What is the advantage of OOP (Object Oriented Programming)?

Advantage of OOP (Object Oriented Programming).

**Simplicity

**modularity:

**modifiability

**extensibility

**maintainability

**re-usability

simplicity: software objects model real world objects, so the complexity is reduced and the program structure is very clear;

modularity: each object forms a separate entity whose internal workings are decoupled from
other parts of the system;

modifiability: it is easy to make minor changes in the data representation or the procedures in an OO program. Changes inside a class do not affect any other part of a program, since the only public interface that the external world has to a class is through the use of methods;

extensibility: adding new features or responding to changing operating environments can be solved by introducing a few new objects and modifying some existing ones;

maintainability: objects can be maintained separately, making locating and fixing problems
easier;

re-usability: objects can be reused in different programs.

How do you do dynamic memory allocation in C applications?

In C, malloc, calloc and realloc are used to allocate memory dynamically. In C++, new(), is usually used to allocate objects.

1. Simplicity: software objects model real world objects, so the complexity is reduced and the program structure is very clear;
2. Modularity: each object forms a separate entity whose internal workings are decoupled from other parts of the system;
3. Modifiability: it is easy to make minor changes in the data representation or the procedures in an OO program. Changes inside a class do not affect any other part of a program, since the only public interface that the external world has to a class is through the use of methods;
4. Extensibility: adding new features or responding to changing operating environments can be solved by introducing a few new objects and modifying some existing ones;
5. Maintainability: objects can be maintained separately, making locating and fixing problems easier;
6. Re-usability: objects can be reused in different programs