What useful functionality do you get out of overriding the 'new' operator?

c++, overriding

Solution

The main reason I've had to overload `new` has been for performance. One example is allocating a large number of small objects, which is often fairly slow with a general purpose allocator, but can often be improved a lot with a custom allocator.

Problem

What new kind of functionalities (for debugging or not) do you find helpful by overriding the new operator?

Original source