| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Центр помощи > [C++]Задача на структуры данных |
| Автор: ktejke 23.12.2008, 14:32 | ||||
| никак не могу сообразить, как обратиться к элементам очереди. в задании нужно создать кнопку, при нажатии которой будет выводиться сумма четных элементов очереди. вот отрывок из методички по этому заданию: III. Динамические очереди Введение Очереди являются универсальными структурами данных. По своей организации оче-реди делятся на прямые ( fifo - first in first out) и обратные ( lifo - last in first out). Существуют также их различные комбинации. Наибольшее распространение получили динамические очереди, реализуемые на основе связных списков. Целью настоящей работы является начальное знакомство с организацией данных в виде простой lifo - очереди и ее реализация в среде визуального программирования. Элементами динамической очереди служат экземпляры класса List. В соответствии с объявлением этого класса (листинг ниже) каждый список содержит два обычных элемента целого типа info и link, в которых размещаются число (полезная информация) и адрес следующего связного списка (служебная информация). Кроме этого, в классе List имеется статический элемент top - адрес начала очереди (один на все экземпляры). Его значение инициализируется при объявлении нулем (так как при создании экземпляра класса List очередь пуста). Конструктор класса List выполняет заполнение данными нового списка и подключение его к существующей очереди, а деструктор – удаление уничто-жаемого списка из очереди. Сама же память под элемент очереди выделяется оператором new, а освобождается после использования оператором delete. В классе List имеются два статических метода: show - показать списки и gettop - вернуть адрес вершины очереди. Следующий листинг содержит объяв-ление класса List и сразу же определяет некоторые его методы. В отчет поместите блок - схему деструктора класса. Создайте в личном каталоге папку lifo , откройте новое приложение и разместите на форме три кнопки. Очередь будет управляться щелчком левой клавиши мыши на соответствующей кнопке формы. Для этого подготовьте (с помощью мастера приложений) заготовки для обработчиков событий OnClick по каждой из кнопок. Кроме этого, в системе должна освобождаться динамическая память в случае, когда форма закрывается, но в очереди еще имеются элементы. Один из вариантов – определить обработчик события за-крытия формы. Подготовьте заготовку и для данного обработчика. В header - файле формы разместите объявление класса List (смотри предыдущий листинг). В cpp – файле формы следует набрать код для невстро-енного метода show , а также для обработчиков событий в header-файле:
в cpp-файле:
помогите, пожалуйста! |
| Автор: ktejke 23.12.2008, 23:53 |
| все умники спят что ли? =( |
| Автор: Dmi3ev 24.12.2008, 00:05 | ||
ты это называешь элементом? тогда у тебя уже есть пример (p->info) |