Поиск:

Ответ в темуСоздание новой темы Создание опроса
> CMemoryException 
:(
    Опции темы
vdm
Дата 6.3.2008, 17:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 236
Регистрация: 16.10.2007

Репутация: нет
Всего: нет



После нескольких вызовов подряд, 
wchar_t *wszNewStr1 = new wchar_t[(sizeof(wcsNewStr)+sizeof(buff))/sizeof(wchar_t)];

дебугер кидает хэндл ошибку 

Unhandled exception at 0x77e55dea in ммм.exe: Microsoft C++ exception: CMemoryException @ 0x02d6fa28.
Как в дальнейшем от неё избавиться?
PM MAIL   Вверх
Earnest
Дата 6.3.2008, 19:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5962
Регистрация: 17.6.2005
Где: Рязань

Репутация: 87
Всего: 183



Найте причину и устранить


--------------------
...
PM   Вверх
dizzy1984
Дата 7.3.2008, 06:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 675
Регистрация: 15.2.2007

Репутация: 10
Всего: 25



Код

delete [] wszNewStr1;

?
PM MAIL   Вверх
Earnest
Дата 7.3.2008, 09:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5962
Регистрация: 17.6.2005
Где: Рязань

Репутация: 87
Всего: 183



Не будет VC на это ругаться (в смысле использование delete и delete[]).
Скорее похоже на то, что vdm где-то выезжает за пределы выделенной памяти, что и обнаруживают отладочные версии delete/new.
 


--------------------
...
PM   Вверх
vdm
Дата 7.3.2008, 10:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 236
Регистрация: 16.10.2007

Репутация: нет
Всего: нет



Цитата(Earnest @ 7.3.2008,  09:35)
Не будет VC на это ругаться (в смысле использование delete и delete[]).
Скорее похоже на то, что vdm где-то выезжает за пределы выделенной памяти, что и обнаруживают отладочные версии delete/new.

Похоже ты прав. А как веделить динамическую память, чтобы дебугер не ругался?
PM MAIL   Вверх
vinter
Дата 7.3.2008, 10:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Explorer
****


Профиль
Группа: Завсегдатай
Сообщений: 2735
Регистрация: 1.4.2006
Где: Н.Новгород

Репутация: 4
Всего: 56



а ну так тут я накосячил, не совсем правильный пример привел smile
wchar_t *wszNewStr1 = new wchar_t[(sizeof(wcsNewStr)+sizeof(buff))/sizeof(wchar_t) + 1];


--------------------
Мой блог
PM MAIL WWW   Вверх
vdm
Дата 7.3.2008, 12:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 236
Регистрация: 16.10.2007

Репутация: нет
Всего: нет



хм.... на восьмой итерации постоянно кидает хэндл ошибку... всё равно.
PM MAIL   Вверх
Earnest
Дата 7.3.2008, 13:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5962
Регистрация: 17.6.2005
Где: Рязань

Репутация: 87
Всего: 183



Мы ведь не знаем, что ты с выделенной памятью делаешь.
Ясно, что где-то что-то нарушаешь. Если не можешь найти из анализа кода, то попробуй использовать функцию _CrtCheckMemory(). Навтыкай вызовов в свой код и смотри, где орать будет, а потом уже разбирайся, почему.


--------------------
...
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Visual C++/MFC/WTL | Следующая тема »


 




[ Время генерации скрипта: 0.1231 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.