HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby
   
 
 
Опции темы Поиск в этой теме Опции просмотра

Проблема с овобождением памяти в C++?
  #1  
Старый 18.03.2009, 13:05
ZipaCna
Познающий
Регистрация: 29.02.2008
Сообщений: 66
С нами: 9577447

Репутация: 33
По умолчанию Проблема с овобождением памяти в C++?

Вообще не могу понять в чем проблема. Удаляет столько же элементов сколько и выделялось по тем же адресам. При небольшом числе элементов всё ок а когда много, то ошибка.
Плизз хелп



Код:
struct my_list{
int o;
my_list *prev;
my_list *next;
};


int _tmain(int argc, _TCHAR* argv[])
{
vector<my_list*> test; //для дебага

my_list first;
first.prev=NULL;
first.next=NULL;
my_list *curr;
curr=&first;

/////////////////////////////////
//вставляет элементы в конец списка
for (int i=0;i<100000;i++){
  my_list *temp;
  temp=new my_list;
  //temp->prev=NULL;
  temp->next=NULL;
  //cout<<temp<<endl;
  test.push_back(temp); //для дебага
  curr->next=temp;
  temp->prev=curr;
  curr=temp;
}
///////////////////////////

/////////////////////////
//освобождает список
//можно было освобождать с хвоста списка но мне нужно так.
int ii=0; //для дебага
my_list *temp,*a;
a=&first;
while(a->next){
	a=a->next;
	temp=a->prev;
	temp->next=a->next;
	//cout<<a<<endl;
	if(a!=test[ii])cout<<"error"; //для дебага
	ii++; //для дебага
	delete a; 
	a=temp;
}
/////////////////////////////////////////////////
   return 0;
}
 
Ответить с цитированием
 



Предыдущая тема Следующая тема
Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
4 и более GB ОЗУ для ОС Windows (32/64) NetSter "Железо" 10 28.12.2009 20:11
Назревает революция в технологиях оперативной памяти jerrri Мировые новости. Обсуждения. 1 10.02.2009 02:47
асм, дизасм, принцип работы процов на определенном уровне. Cthulchu "Железо" 0 05.01.2009 20:14
Создан чип памяти размером с клетку крови EPIDEM Мировые новости. Обсуждения. 11 27.01.2007 15:20



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.