Если вы говорите о valgrind, я полагаю, что вы заинтересованы в программном обеспечении Linux.
С помощью MTrace вы можете легко создать свой собственный отчет для распределения и удаления занимаемой площади. Это не напрямую C ++, а напрямую интегрировано в GlibC. Насколько я знаю, C ++ операторы new и delete используют это для выделения памяти перед вызовом конструктора и освобождения памяти после вызова деструктора.