13.01.2015 Views

Объектно-ориентированное программирование на С++ - eDrive

Объектно-ориентированное программирование на С++ - eDrive

Объектно-ориентированное программирование на С++ - eDrive

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

52<br />

мирования и присутствуют в них как классы. Они, как правило, разрабатываются<br />

программистами или берутся из библиотек – контейнеров. Каждая<br />

структура характеризуется порядком заполнения (allocation) и порядком обхода<br />

(traversal).<br />

Некоторые характеристики классов ди<strong>на</strong>мических структур C++Builder<br />

приведены в табл. 12:<br />

Таблица 12<br />

Свойства и методы контейнерных классов C++Builder<br />

Имя Член Классы Наз<strong>на</strong>чение<br />

Push Метод TStack, TQueue Добавляет член в вершину<br />

Pop Метод TStack, TQueue Удаляет члены из вершины<br />

Peek Метод TStack, TQueue Указатель <strong>на</strong> вершину<br />

Count Метод TStack, TQueue Возвращает число членов (размер)<br />

AtLeast Метод TStack, TQueue Проверяет размер<br />

Capacity Свойство TList Максимальный размер<br />

Count Свойство TList Фактический размер<br />

Items Свойство TList Указатель <strong>на</strong> член<br />

List Свойство TList Указатель <strong>на</strong> список членов<br />

First Метод TList Указатель <strong>на</strong> первый член<br />

Last Метод TList Указатель <strong>на</strong> последний член<br />

Add Метод TList Добавляет член в вершину<br />

Insert Метод TList Добавляет член в заданное место<br />

Delete Метод TList Удаляет член с указанным индексом<br />

Remove Метод TList Удаляет указанный член<br />

Clear Метод TList Удаляет все члены<br />

Pack Метод TList Удаляет пустоты<br />

Exchange Метод TList Меняет местами два чле<strong>на</strong><br />

Move Метод TList Перемещает указанный член<br />

Expand Метод TList Увеличивает максимальный размер<br />

Sort Метод TList Сортирует члены<br />

Наиболее распространенной ди<strong>на</strong>мической структурой является стек<br />

(stack). Это последовательность данных, в которой помещение и выборка<br />

информации выполняется с одного конца, именуемого вершиной стека (top).<br />

Иными словами, стек обрабатывает данные по принципу «последним вошел<br />

– первым вышел» (LIFO – Last Input, First Output). Примеры:<br />

void _ _fastcall TForm1::StackClick (TObject *Sender) {<br />

AnsiString a[] = { "Иванов", "Петров", "Сидоров" }, b = "0\n";<br />

TStack *s = new TStack;<br />

for (int i=0; iPush (a[i].c_str ());<br />

b += AnsiString (s–>Count ()) + ' ' + (char*) s–>Peek () + '\n';

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!