What is the difference between new () and malloc () methods?
* Operator new automatically calculates the size of the object that it constructs. Conversely, with malloc (), the programmer has to specify explicitly the number of bytes that have to be allocated. In addition, malloc () returns void *, which has to be explicitly cast to the desired type. This is both tedious and dangerous. Operator new returns a pointer to the desired type, so no explicit typecast is required. * new and delete automatically construct and destroy objects. malloc() and free(), on the other hand, merely allocate and deallocate raw memory from the heap. delete can be overloaded, free cannot. delete invokes the destructor of the object to be deallocated, free does not do this. In summary, here are the differences. 1. Operator new constructs an object (calls constructor of object), malloc does not. 2. Operator new is an operator, malloc is a function. 3. Operator new can be overloaded, malloc cannot be overloaded. 4. Operator new throws an exception if there is not enough