Пример #1
0
void N2FNewsManager::SortByDate()
{
	VList tempList;
	while (messages->Size())
	{
		tempList.PushBack(*(messages->Begin()));
		messages->Erase(messages->Begin());
	}

	while (tempList.Size())
	{
		VList::Iterator maxIt;
		N2FMessage *curMax = NULL;
		for (VList::Iterator it = tempList.Begin(); it != tempList.End(); it++)
		{
			N2FMessage *tmp = (N2FMessage*)(*it);
			if (!curMax || IsHigher(curMax, tmp))
			{
				curMax = tmp;
				maxIt = it;
			}
		}
		messages->PushBack(curMax);
		tempList.Erase(maxIt);
	}
}