C++ has several functions to acquire dynamic storage, most of which differ in some fundamental way. Several more are usually added by the OS.
Two of these are of spe
The main differences, aside from syntax and free vs. delete, are
::operator new;malloc comes with realloc, for which new has no equivalent;new has the concept of a new_handler, for which there is no malloc equivalent.(Replacing malloc opens up a can of worms. It can be done, but not portably, because it requires knowledge of the linker.)