На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
[!] Как относитесь к модерированию на этом форуме? Выскажите свое мнение здесь
  
> Программа падает при попытке очистить структуру. , Borland C++ Builder v.6.0.
    Есть структура. Создал записи 1,2,3 - удаляю 3,2,1. То есть, все в обратную сторону.

    Но при очистке ПО вылетает.

    ExpandedWrap disabled
          for (unsigned int uiTemp=0; uiTemp<g_uiNesterov_Maximum; uiTemp++)
          {
              delete []g_strFile_Data->strAnalogs.strAnalog[uiTemp].bError;
              delete []g_strFile_Data->strAnalogs.strAnalog[uiTemp].fLimit_Low;
              delete []g_strFile_Data->strAnalogs.strAnalog[uiTemp].fValue;
              delete []g_strFile_Data->strAnalogs.strAnalog[uiTemp].fLimit_High;
              delete []g_strFile_Data->strAnalogs.strAnalog[uiTemp].fTime;
          }
       
          delete []g_strFile_Data->strAnalogs.strAnalog;
       
          delete []g_strFile_Data->strFrame1;
          delete []g_strFile_Data->strFrame2;
          delete []g_strFile_Data->strFrame3;
          delete []g_strFile_Data->strFrame4;
       
          delete []g_strFile_Data;
          g_strFile_Data = NULL;


    Как игнорировать ошибку, при которой ПО падает, - и попытаться доудалять то, что осталось? Try не помогает.

    Единственный способ очистки памяти, который нашел - перезапуск ПО. Тогда и delete никогда не нужен.
      Обычно падение на delete это уже следствие кривой работы с памятью. page heap flag в помощь.
      Сообщение отредактировано: shm -
      0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
      0 пользователей:


      Рейтинг@Mail.ru
      [ Script execution time: 0,0173 ]   [ 17 queries used ]   [ Generated: 28.03.24, 18:57 GMT ]