|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
23.08.2012, 17:56 | #1 |
Пользователь
Регистрация: 10.11.2009
Сообщений: 50
|
Как очистить указатель?
Здравствуйте. Вот есть некие код, который вроде бы и работает но при работе наблюдается лавинообразный эффект поглощения памяти.
Подскажите как в данном случае можно освобождать память?Или где по вашему мнению утечка? Есть мнение что вся проблема в BYTE* bitPointer, но как его очистить? В мануалах ничего найти не смог. Спасибо. Реализация в win application. stdafx.h Код:
Код:
Последний раз редактировалось CWD; 23.08.2012 в 21:41. |
23.08.2012, 22:15 | #2 |
Форумчанин
Регистрация: 09.10.2010
Сообщений: 217
|
Деструктора не хватает.
Ёж птица гордая, пока не пнешь не полетит.
|
23.08.2012, 23:00 | #3 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,342
|
Открываем документацию и читаем про CreateDIBSection - что надо делать с полученным HBITMAP когда закончим?
Кстати, вы выбрали самый сложный способ прочитать пиксель... Зачем копировать *все* окно, можено сделать GetPixel() прямо из winDC |
23.08.2012, 23:42 | #4 |
Пользователь
Регистрация: 10.11.2009
Сообщений: 50
|
waleri HBITMAP удаляется, но утечка продолжается.
Код:
Код:
Последний раз редактировалось CWD; 24.08.2012 в 01:05. |
24.08.2012, 01:05 | #5 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
ReleaseDC так же выполняется не всегда.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
24.08.2012, 01:44 | #6 |
Пользователь
Регистрация: 10.11.2009
Сообщений: 50
|
Пепел феникса, находил много жалоб на утечку памяти в этой строке на других форумах, но к сожалению не нашел решений. Думал может кто сталкивался с такой штукой.
Если строку закоментить то проблема с утечкой решается Код:
Но очень она нужна эта строка. |
24.08.2012, 08:59 | #7 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
у вас сначала выполняется return.
до ReleaseDC не доходит выполнение. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
24.08.2012, 11:45 | #8 |
Пользователь
Регистрация: 10.11.2009
Сообщений: 50
|
Пепел феникса, спасибо! Проблема была именно в этом месте.
P.S. Проблема решена, а была она в криворукости Топик Стартера. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как очистить экран? | shrek1993 | Visual C++ | 2 | 18.07.2012 21:34 |
как очистить массив??? | yura_zb | Общие вопросы C/C++ | 4 | 02.05.2011 21:43 |
Как очистить Canvas? | beegl | Общие вопросы Delphi | 4 | 30.05.2008 02:51 |
Как очистить Canvas? | Pro_BerSerK | Общие вопросы Delphi | 9 | 30.01.2008 16:03 |
как очистить экран | doncova1 | Общие вопросы C/C++ | 3 | 18.03.2007 09:50 |