Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 09.02.2019, 16:35   #1
lallollulz
Пользователь
 
Регистрация: 20.10.2018
Сообщений: 16
По умолчанию обнаружения утечек памяти

в общем есть большой проект, изначально не мой. решил проверить весь код на утечки, подключил отлов:
Код:
#ifdef _DEBUG
#define _CRTDBG_MAP_ALLOC
#include <stdlib.h>
#include <crtdbg.h>
#define DEBUG_NEW new(_NORMAL_BLOCK, __FILE__, __LINE__)
#define new DEBUG_NEW
#endif
в конце программы вставил:
Код:
#ifdef _DEBUG
	_CrtDumpMemoryLeaks();
#endif
теперь когда запускаю отладку на дебаг конфигурации и после того как программа отработает (завершится) - в окне вывод мне выводит следующую инфу
Цитата:
{15990559} normal block at 0x04DF4910, 8 bytes long.
Data: < > 00 C2 D4 04 00 00 00 00
{15990558} normal block at 0x04DF41A0, 8 bytes long.
Data: < > E4 C1 D4 04 00 00 00 00
{15990557} normal block at 0x04DF4018, 8 bytes long.
Data: < > C8 C1 D4 04 00 00 00 00
и так утечек чрезмерно много, но мне это не о чем не говорит. пару утечек было в понятном мне формате (с ссылкой на конкретную строку в коде):
Цитата:
{370} normal block at 0x00B6ED40, 72 bytes long.
Data: < 8 @ > B8 A1 BB 00 38 C4 B8 00 98 40 B9 00 01 01 CD CD
d:\games\warcraft\unm\ghost\ghost.c pp(956) : {344} normal block at 0x00B870B0, 1024 bytes long.
Data: < > CD CD CD CD CD CD CD CD CD CD CD CD CD CD CD CD
почему так происходит? и как сделать чтобы все отчеты об утечках были вместе с ссылками на строку в коде?
lallollulz вне форума Ответить с цитированием
Старый 09.02.2019, 16:55   #2
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,493
По умолчанию

Цитата:
Сообщение от lallollulz Посмотреть сообщение
почему так происходит
Не весь код собран с этими макросами, например сторонние библиотеки и/или файлы, которые не цепляют нужные заголовки.
waleri вне форума Ответить с цитированием
Старый 09.02.2019, 17:18   #3
lallollulz
Пользователь
 
Регистрация: 20.10.2018
Сообщений: 16
По умолчанию

т.е. утечки в подключенных библеотеках? а как узнать в каких именно, есть какие-то варианты? я так понял стандартные библиотеки можно сразу откинуть, в них утечек никак не может быть?
lallollulz вне форума Ответить с цитированием
Старый 09.02.2019, 17:19   #4
lallollulz
Пользователь
 
Регистрация: 20.10.2018
Сообщений: 16
По умолчанию

забыл упомянуть, проект достаточно большой (около 100к строк) и подключенных библиотек тоже очень много
lallollulz вне форума Ответить с цитированием
Старый 09.02.2019, 19:09   #5
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,493
По умолчанию

Собирать все библиотеки таким макаром, только даже если вы найдете там утечки что делать будете...
waleri вне форума Ответить с цитированием
Старый 09.02.2019, 19:25   #6
lallollulz
Пользователь
 
Регистрация: 20.10.2018
Сообщений: 16
По умолчанию

Цитата:
Сообщение от waleri Посмотреть сообщение
Собирать все библиотеки таким макаром, только даже если вы найдете там утечки что делать будете...
исходники некоторых используемых в проекте библиотек у меня есть (на которые я грешу), повторю не думаю что утечки в стандартных c++ или виндовских библиотеках)

Последний раз редактировалось lallollulz; 09.02.2019 в 19:27.
lallollulz вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Код для обнаружения незаполненного поля на форме Bukashka1999 Помощь студентам 0 15.05.2017 17:56
Отслеживание утечек памяти в Delphi XE4 MainUnit.pas Общие вопросы Delphi 21 19.08.2014 09:17
valgrind для поиска утечек памяти gunsoy Общие вопросы C/C++ 0 31.05.2014 08:12
Система обнаружения вторжений exp_keym Безопасность, Шифрование 1 07.12.2013 12:41
Эффективная утилитка для обнаружения утечек памяти и run-time ошибок Zen2007 Общие вопросы C/C++ 2 19.07.2009 22:54