Читайте также: |
|
Абстрагирование — это способ выделить набор значимых характеристик объекта, исключая из рассмотрения незначимые. Соответственно, абстракция — это набор всех таких характеристик.[1]
Инкапсуляция
Инкапсуляция — это свойство системы, позволяющее объединить данные и методы, работающие с ними в классе, и скрыть детали реализации от пользователя.[1]
Наследование
Наследование — это свойство системы, позволяющее описать новый класс на основе уже существующего с частично или полностью заимствующейся функциональностью. Класс, от которого производится наследование, называется базовым, родительским или суперклассом. Новый класс — потомком, наследником, дочерним или производным классом.[1]
Полиморфизм
Полиморфизм — это свойство системы использовать объекты с одинаковым интерфейсом без информации о типе и внутренней структуре объекта.[1] При использовании термина «полиморфизм» в сообществе ООП подразумевается полиморфизм подтипов; а использование параметрического полиморфизманазывают обобщённым программированием.
Класс
Класс является описываемой на языке терминологии исходного кода моделью ещё не существующей сущности (объекта). Фактически он описывает устройство объекта, являясь своего рода чертежом. Говорят, что объект — это экземпляр класса. При этом в некоторых исполняющих системах класс также может представляться некоторым объектом при выполнении программы посредством динамической идентификации типа данных. Обычно классы разрабатывают таким образом, чтобы их объекты соответствовали объектам предметной области.
Объект
Сущность в адресном пространстве вычислительной системы, появляющаяся при создании экземпляра класса или копирования прототипа (например, после запуска результатов компиляции и связывания исходного кода на выполнение).
Прототип
Прототип — это объект-образец, по образу и подобию которого создаются другие объекты. Объекты-копии могут сохранять связь с родительским объектом, автоматически наследуя изменения в прототипе; эта особенность определяется в рамках конкретного языка.
Стандартная библиотека шаблонов (STL). Списки. Деки. Операции с деками. Объявление и инициализация дека. Стандартная библиотека шаблонов (STL). Стеки. Объявление и инициализация стека. Очереди. Объявление и инициализация очереди.
Описание шаблонов stack, queue, deque содержится в одноименных заголовочных файлах, то есть для использования этих структур необходимо подключить один из трех заголовочных файлов:
#include<stack>
#include<queue>
#include<deque>
После этого можно создавать объекты на основе данных шаблонов:
stack<int> S; // Стек объектов типа int
queue<double> Q; // Очередь объектов типа double
deque<string> D; // Дек объектов типа string
После этого с объявленными объектами можно выполнять операции, например:
S.push(3); // Положить в стек S число 3
Q.size(); // Узнать размер очереди Q
D.pop_front(); // Удалить элемент из начала дека D
Рассмотрим более подробно список методов, присущих шаблонам stack<type>, queue<type>, deque<type> (typeT – это тип данных, хранящихся в соответствующей структуре).
Методы удаления pop, pop_front и pop_back в STL не возвращают значения. Кроме того, реализации стека, очереди, дека в STL не содержат проверок на возникновение ошибок, то есть за некорректную работу программы при вызове операций на пустом стеке отвечает сам пользователь.
Метод очистки clear существует только у дека.
Методы шаблона stack<type>
Дата добавления: 2015-09-03; просмотров: 76 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Последовательные контейнеры поддерживают указанный пользователем порядок вставляемых элементов. | | | Классы map и multimap |