Здравствуйте, OdesitVadim, Вы писали:
OV>Здравствуйте, barberis, Вы писали:
B>>Вы правильно сказали. C++ Windows, Linux. О Valgrind: пересмотрел всю документацию. Не нашел. Можете подсказать конкетную опцию которую я должен использовать ?
OV>Вот к примеру я обычно запускаю так
OV>valgrind --leak-check=full --show-reachable=yes --log-file=log.txt -v --track-fds=yes ./имяподопытной параметры_подопытной
OV>первый параметр — отслеживать утечки.
OV>второй — делать их анализ, для начала можно убрать.
OV>третий — сохранять в файл. По умолчанию выводит на консоль, может быть неудобно.
OV>четвертый — делать более ошбирный вывод. Часто бывает лишняя информация.
OV>пятый параметр — отслеживать открытые/закрытые дескрипторы
OV>В такой конструкции, если где то происходит "нарушение", выводиться стек вызовов, некоторые параметры, адреса строк в исходном файле (если он конечно скомпилирован с поддержкой отладки, опция -g). Если проект большой — может быть много информации. Иногда бывает ложная информация — особенно внутри библиотеки stl. Поэтому лучше искать то, что сразу понятно и устранять, потом снова прогнать. Некоторые ошибки связанные, так что...
OV>Мне valgrind помог найти один delete, где следовало бы написать delete[]. Я несколько часов разбрирал код, пока понял, что он прав. Теперь я там упростил
Спасибо, но мне нужно фиксировать не утечки памяти. Я перед тем как постить тему на форуме прогонял приложение в Valgrind — он ничего не нашел. Пробовал также экспериментальную тулзу ptr_check — валгринд крашится. Но вопрос не в этом. Я бы хотел выводить в лог адреса всей выделяемой во время работы приложения памяти. Но еще раз повторюсь: я среди параметров такой опции не нашел и как я понимаю ее вообще не существует. Или я не прав ?