Right, but you still need the keyword new somewhere.
But a non-overloaded new results in a call to malloc anyway, and malloc in Win32 CRTs is implemented using HeapAlloc (on a seperate heap). Placement new is nice when you want to place a lot of objects in virtual memory (VirtualAlloc).

You can also overload new for your classes, which enables you to use a more direct route to HeapAlloc.