Обычно инструменты профилирования памяти, такие как Valgrnid или Rational Purify , могут помочь вам профилировать использование памяти программами.
В случае, если вы все еще хотите иметь собственную реализацию,
Вы можете Заменить глобальные new
и delete
операторы, перегрузив их, и внутри ваших собственных перегруженных операторов вы можете сохранить количество выделенной памяти.
В случае, если вывыберите / вынуждены следовать второму варианту, есть определенные аспекты, о которых нужно позаботиться, подробности в этом ответе можно прочитать здесь .
Если вы используете STL:
Классы контейнеров STL, в свою очередь, используют операторы Global new
& delete
для распределений.Поэтому, если вы замените глобальные операторы new
& delete
, STL будет использовать их вместо стандартных операторов std и delete.