Программирование на языке MFC

Мой второй блог в серии программирования

Метод FreeAssoc


Давайте попробуем разобрать, что происходит при сохранении данных. Естественно, первым делом в файл записывается число элементов таблицы. После этого в файл записываются ключи и зна­чения, хранящиеся только в НЕПУСТЫХ списках ассоциаций. Это повторяется для всех элементов таблицы. При считывании дан­ных сначала считываемая число элементов таблицы, затем попар­но считываются ключ и значение ассоциации. Сразу после считы­вания ассоциация помещается в нужное место хэш-таблицы при помощи метода SetAt().

Обратным для метода NewAssoc() является метод FreeAssoc():

void CMapWordToOb::FreeAssoc(CMapWordToOb::CAssoc* pAssoc) {

pAssoc->pNext = m_pFreeList;

m_pFreeList = pAssoc; m_nCount—;

ASSERT(m_nCount >= 0); // make sure we don’t underflow

// if no more elements, cleanup completely if (m_nCount == 0) RemoveAll();

}

Похожие статьи: