Basic point (again): C++ requires to much damn thought and code that could better be spent solving actual problems, instead of those created by the compiler.
Yep, that's pretty much it. C++ is useless except as a better C, and C is not good as an application language. It's good for writing things that are fast and accurate.
BTW I don't see anything really complex about malloc and free. You decide how much memory is needed, get it, give it back.
The main problem with malloc is heap contention when it's happening in independent threads. This kind of problem shouldn't show up at the application or even the library level - the OS should handle it. It's proof that C is still a systems language.