Наш CheckPointer инструмент, скорее всего, может найти точное место, где вы повредили память.
Большинство инструментов для проверки памяти имеют какие-то "ограждения" вокруг ваших данных, чтобы обнаружить плохой доступ. Такие заборы имеют значительно больший размер, чем ограждаемый объект; если вы получаете доступ снаружи объекта, но внутри забора, ошибка не обнаружена. Например, Valgrind не имеет ни малейшего представления о фреймах стека, поэтому не может обнаружить доступ к фрейму стека, который вышел из области видимости и был перезаписан другим. CheckPointer может .
CheckPointer отслеживает точное распределение каждого блока хранилища (кучи, стека, части структуры) и каждого доступа. Он точно знает, когда вы вышли за пределы точного пространства, отведенного для объекта хранения (например, если вы достигли конца массива, встроенного в середину структуры). Таким образом, он может обеспечить намного лучшую проверку.
CheckPointer также предоставит дамп после выполнения всего выделенного хранилища; конечно, вы можете вызвать эту процедуру дампа в произвольном месте в вашем коде в качестве средства отладки.