crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в данную темуНачать новую тему
> Чем вы пользуетесь для обнаружения утечек памяти и run-time ошибок в приложениях, использующих qt
Kawaii
  опции профиля:
сообщение 16.4.2011, 22:24
Сообщение #1


Новичок


Группа: Новичок
Сообщений: 4
Регистрация: 14.2.2011
Пользователь №: 2410

Спасибо сказали: 0 раз(а)




Репутация:   0  


Добрый день, появилась необходимость посмотреть утечки памяти в приложении, использую Visual Studio 2010, qt 4.7.2.
Возникло у меня два вопроса:
1. Вопрос первый - Чем вы пользуетесь для поиска утечек
Сама я буквально сегодня поизучала Memory Validator в работе, может чего то я не поняла из хелпа, но вот незадача - у меня есть приложение, падающее с ошибкой сегментирования, запускаю его в этом валидаторе, смотрю во вкладке "мемори", а там нет ни одной строки со значком "Memory Error", хотя по идее строка быть должна раз есть ошибка сегментирования, вобщем не понятно...
2. Вопрос второй - Если вы используете crt-шные отладочные функции, то как подключаете. Может я опять же что то недопонимаю, но вот подключила я таким вот образом (в main.cpp):
Этот код включаю после инклудов Qt и своих хэдеров:
#if defined(WIN32) && defined(_DEBUG)
     #define _CRTDBG_MAP_ALLOC
     #include <stdlib.h>
     #include <crtdbg.h>
     #define DEBUG_NEW new( _NORMAL_BLOCK, __FILE__, __LINE__ )
     #define new DEBUG_NEW
#endif

А этот код внутри функции main

int main(int argc, char **argv) 
{
    #if defined(_MSC_VER) && defined(_DEBUG)
    _CrtSetDbgFlag ( _CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF );
#endif
//тут мой код дальше
}


Все компилится без ошибок но при запуске в дебаге в окне Output нет никакой информации, относящейся к утечкам памяти...


Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 16.4.2011, 23:33
Сообщение #2


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9656
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


насколько я знаю кроме линуксового valgrind-а ничего путнего нет (за даром).

Цитата(Kawaii @ 17.4.2011, 1:24) *
2. Вопрос второй - Если вы используете crt-шные отладочные функции
я использую только средства Qt:
qDebug() << "test value:" << value;
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 27.2.2020, 15:01