Объектно-ориентированное программирование на С++ - eDrive
Объектно-ориентированное программирование на С++ - eDrive
Объектно-ориентированное программирование на С++ - eDrive
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
59<br />
else ShowMessage ("Такой член уже есть");<br />
}<br />
}<br />
AnsiString Process (vTree *node) {<br />
static AnsiString result;<br />
result += AnsiString (node–>data) + ' ';<br />
return result;<br />
}<br />
AnsiString InOrder (vTree *node) {<br />
AnsiString result;<br />
If (node != 0) {<br />
InOrder(node–>left);<br />
result = Process (node);<br />
InOrder (node–>right);<br />
}<br />
return result;<br />
}<br />
Стандарт<strong>на</strong>я библиотека STL<br />
Библиотека STL (Standard Templates Library) представляет <strong>на</strong>бор шаблонов<br />
классов <strong>С++</strong>, включающий контейнеры, итераторы, аллокаторы и алгоритмы,<br />
в пространстве имен std. Контейнеры (container) служат классами,<br />
организующими хранение объектов. Неупорядоченные контейнеры представляют<br />
vector, list, deque. К упорядоченным контейнерам относятся set,<br />
map, hash-set, hash-map и их разновидности. Итераторами (iterator) <strong>на</strong>зывают<br />
средства перемещения по объектам контейнеров. Обычно эту роль играют<br />
указатели, поддерживающие итерацию. Итераторы бывают прямыми и<br />
обратными, константными и неконстантными, изменяющими содержимое<br />
контейнера. Низкоуровневые функции распределения памяти контейнеров<br />
<strong>на</strong>зывают аллокаторами (allocator). С их помощью все члены STL автоматически<br />
выделяют и освобождают память, не требуя от программиста использования<br />
операторов new и delete. Для манипулирования данными в контейнерах<br />
служат алгоритмы (algorithm). Обычно <strong>на</strong> них возлагаются стандартные<br />
операции сортировки, поиска, сравнения, перестановки и т.п.<br />
Контейнер vector, описанный в файле заголовка является ди<strong>на</strong>мическим<br />
массивом переменного размера. Подобно стеку, он обеспечивает<br />
добавление объектов в конец функцией push_back и удаление их оттуда<br />
функцией pop_back. Кроме того, в нем реализова<strong>на</strong> вставка объектов в про-