00001 /* 00002 * CntmLib - Подсчет ссылок, потоки, синхронизация, асинхронные процедуры, события 00003 * Copyright (c) 2005, Овсеевич Роман, CntmLib@mail.ru 00004 * _______________________________________________________________________________ 00005 * Разрешено свободное использование, копирование, распространение, изменение 00006 * (изменение сведений об авторских правах запрещено). Запрещена продажа и 00007 * включение всей библиотеки или ее частей в другие библиотеки. В сведениях об 00008 * авторских правах на программу (или сведениях о программе, об авторах, 00009 * использованных средствах разработки и т.д.) должна быть указана информация 00010 * о библиотеке CntmLib, ее авторе и, возможно, сайте или email'е. 00011 * Библиотека поставляется "как есть", без каких-либо гарантий со стороны автора. 00012 */ 00013 00014 /** 00015 * \defgroup Containers Cntm.Containers 00016 * Пакет содержит контейнерные шаблонные классы перечней Cntm::Register и Cntm::RegisterEx. Особенности этих классов заключаются в том, что они не хранят значения, а только их регистрируют. Для хранения значений применяется специальный объект - эл-т перечня. Кроме хранения эл-т отвечает за регистрацию значения в определенном перечне, при установке значения он производит регистрацию значения в перечне, а при своем уничтожение - убирает регистрацию, т.е. автоматизирует управление наличием значения в перечне. Доступ к зарегистрированным в перечне значениям производится через объекты-перечислители, которые позволяют перебирать все значения перечня. Отличие Cntm::Register и Cntm::RegisterEx заключается в том, что Cntm::RegisterEx является ссылочным объектом. 00017 * 00018 * Также пакет содержит классы перечней для хранения набора обычных указателей на ссылочные объекты - Cntm::NoRefPtrRegister и Cntm::NoRefPtrRegisterEx. Эти классы могут применяться, когда ссылочному объекту требуется зарегистрировать свой указатель в каком-либо перечне (например, в перечне объекта-владельца), но так, чтобы эта регистрация не приводила к захвату ссылки на объект. В этом случае ссылки на объект создаются только при перечислении перечня. Изъятие объектов из перечня происходит автоматически при уничтожении ссылочного объекта. Эти классы наследуют Cntm::Register и Cntm::RegisterEx. Классы Cntm::NoRefPtrRegister и Cntm::NoRefPtrRegisterEx отличаются только тем, что последний сам является ссылочным объектом. 00019 * 00020 * Также пакет содержит класс Cntm::HandledList, похожий на класс Cntm::Register, отличающийся от него тем, что сам хранит заносимые в него значения. 00021 */ 00022 00023 #include <Cntm/Containers/HandledList.h> 00024 #include <Cntm/Containers/Register.h> 00025 #include <Cntm/Containers/RegisterEx.h>
© Овсеевич Р.В. Документация по CntmLib 1.1.4 от 28 May 2008. Создано системой 1.5.3 |