Вообщем не с того не с сего возникла проблема с списком указателей, делаю через свой шаблон, но привиду вариант с STL — ошибка одна и таже.
#pragma once
#include "stdio.h"
template <class T>
struct STLList{
std::list<T> List;
std::list<T>::iterator Iter;
T RemFirst()
{
std::list<T>::iterator Iter;
Iter = List.begin( );
T temp=*Iter;
List.remove(*Iter);
return temp;
};
};
int main(argv[])
{
STLList<DWORD*> TestList;
char* pChar = (char* )malloc(0x100);
while(i++)
{
ins = new DWORD(i);
if(GetRnd(2)==1) // <-- Рандом 1:2
{
TestList.List.push_back(ins);
}
else
{
ins=TestList.RemFirst();
if(ins)
{
delete ins; // <-- Вот здесь возникает ошибка, мол ошибка освобождения памяти
}
}
}
free(pChar);
}
Заранее благодарен!