programming-C or C++

I guess we'll just have to agree to disagree, then. There is only one pool of memory available to any application running on any given computer. There can, therefore, only, fundamentally, be one memory management function. For C/C++ applications, that is malloc and free.

The new and delete operators are addons for C++ applications. But, they can not directly allocate and de-allocate memory. At the core, then, they must call malloc and free.

Now, this is not to say that all they do is call malloc and free. Certainly there is a lot more to what new and delete do than simply calling malloc and free.

But since malloc is THE memory allocation function, and free is THE memory de-allocation function, new and delete have no other way of getting memory and freeing memory than to use malloc and free.

the parts of C that are replaced need not be studied by C++ programmers.

I disagree here. Unless one understands that new and delete don't have their own pool of memory, and can't somehow allocate all the memory that an application might want, one gets into all kinds of trouble with applications failing when there is not enough memory.

Only knowing about the top layer of a multi-tiered programming language causes one to assume that the top layer is all that there is.