|
17 / 5 / 0
Регистрация: 16.04.2016
Сообщений: 344
|
|
Как правильно отследить утечки памяти в mfc приложении19.03.2023, 23:09. Показов 2232. Ответов 4
Метки нет (Все метки)
Всех приветствую. Есть ли способ,как вывести,к примеру в messagebox,файлы и строки в них,где возникают утечки памяти. Я хочу чтобы,к примеру,в начале мы запустили процесс отслеживания,а в какой-либо строке кода вызвали функцию,получающую утечки памяти,и вывели в MessageBox в каких строках каких файлов они были обнаружины. Мне очень понравилась библиотека _CrtDumpMemoryLeaks,но она не умеет выводить текст в диалоговое окно. Подскажите пожалуйста,как можно отследить утечки памяти в mfc приложении (там есть как и c++ код,так и c код).
0
|
|
| 19.03.2023, 23:09 | |
|
Ответы с готовыми решениями:
4
Утечки памяти в приложении, связанные с ресурсами элементов
подскажите пожалуйста, правильно ли сделанна конструкция, и не будет ли утечки памяти |
|
фрилансер
6467 / 5682 / 1131
Регистрация: 11.10.2019
Сообщений: 15,144
|
||||||
| 20.03.2023, 07:28 | ||||||
|
КАВ, я вот так навскидку припоминаю только один случай, где можно поймать утечку в MFC - это когда работаешь с CDatabase, CRecord. Если они кидают исключение, то ловить его нужно не при помощи try/catch, а при помощи макросов TRY/CATCH/END_CATCH
Расскажи, как ты используешь в проекте динамическую память? Когда именно появляется утечка, после каких действий
0
|
||||||
|
2736 / 891 / 331
Регистрация: 10.02.2018
Сообщений: 2,120
|
|
| 20.03.2023, 13:21 | |
|
КАВ, у VisualStudio есть встроенные средства профилирования. В числе прочего есть возможность анализировать состояние кучи. Реализуется это с помощью снимков памяти. Сперва делаются два снимка, а потом смотрится разница между ними. Пример в виде последовательности снимков экрана и текстового пояснения к ним.
1.1 Запускаем отладку и останавливаемся в начале для создания первого снимка. 1.2 В средствах диагностики выбираем закладку "использование памяти". 1.3 Включаем профилирование кучи. 1.4 Делаем снимок 2.1 Выполняем программу до второй точки останова. 2.2 Делаем второй снимок 2.3 Активируем окно анализа 3.1 В режиме просмотра выбираем "представление стеков". 3.2 Разворачиваем/сворачиваем стеки вызовов с наибольшими цифрами и определяем место утечек
0
|
|
|
17 / 5 / 0
Регистрация: 16.04.2016
Сообщений: 344
|
||||||
| 20.03.2023, 15:08 [ТС] | ||||||
|
Я не знаю,есть ли у меня утечки,поэтому я хочу это проверить. Кстати интересно,будет ли утечка памяти в этом случае:
Добавлено через 15 минут Я не знаю,есть ли у меня утечки памяти,поэтому я и хочу это узнать. Кстати раз речь зашла об причинах утечек,может ли быть утечка в этом случае?
0
|
||||||
|
фрилансер
6467 / 5682 / 1131
Регистрация: 11.10.2019
Сообщений: 15,144
|
|||||||
| 20.03.2023, 17:42 | |||||||
|
Добавлено через 1 минуту а ещё, в C++ забудь про NULL, тут - nullptr Добавлено через 1 минуту а в C++ используется new/delete, new[]/delete[] Добавлено через 2 минуты
0
|
|||||||
| 20.03.2023, 17:42 | |
|
Помогаю со студенческими работами здесь
5
А как вы находите утечки памяти? Как проверить утечки памяти? Утечки памяти в qt приложения как отловить Ошибка: Утечки памяти Как исправить? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Подстановка значения реквизита справочника в табличную часть документа
Maks 11.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
|
Очистка реквизитов документа при копировании
Maks 10.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях.
Задача: при копировании документа очищать определенные реквизиты и табличную. . .
|
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 09.04.2026
https:/ / github. com/ shumilovas/ med2. git
main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели
8ATzM_2aurI
|
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 09.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2.
Задача: запретить редактирование документа, если он открыт у другого пользователя.
/ / . . .
|
|
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои.
А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
|
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20%
kYBz3eJf3jQ
|
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 08.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
|
Горе от ума
kumehtar 08.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
|