Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
25
Добавлен:
27.02.2014
Размер:
133.63 Кб
Скачать

  • Заголовочный файл iostream.h содержит определения классов, которые вы можете проанализировать, чтобы лучше понять потоковый ввод/вывод.

  • Используя метод cout.width, ваши программы могут управлять шириной вывода.

  • Используя метод cout.fill, ваши программы могут заменить пустые выходные символы (табуляцию и пробелы) некоторым определенным символом.

  • Для управления количеством цифр, выводимых выходным потоком cout для значений с плавающей точкой, ваши программы могут использовать метод cout.setprecision.

  • Для вывода и ввода по одному символу за один раз ваши программы могут использовать потоковые методы cout.put и cin.get.

  • Используя метод cin.getline, ваши программы могут вводить целую строку за один раз.

Форматированный ввод/вывод

Для того чтобы организовать форматированный ввод и вывод , аналогичный тому , что предоставляют пользователю функции printf() и scanf() в языке C++ используются два способа.

Первый состоит в применении функций членов - класса ios.

При втором способе употребляется специальный вид функций, называемых манипуляторами.

Пример вывода и числа:

#include <iostream.h>

void main(void)

{cout << "Мое любимое число равно " << 1001;}

Пример форматирования:

#include <iostream.h>

#include <iomanip.h>

void main(void)

{ cout << "Мое любимое число" << setw(3) << 1001 << endl;    cout << "Мое любимое число" << setw (4) << 1001 << endl;    cout << "Мое любимое число" << setw (5) << 1001 << endl;    cout << "Мое любимое число" << setw(6) << 1001 << endl;}

Подобным образом метод cout.width позволяет вам указать минимальное количество символов, которое будет использовать сои/для вывода следующего значения.

  1. Подпрограмма обработки прерывания от клавиатуры сканирует код клавиши. Если это цифровая клавиша, то записывает его в буфер, запускает таймер ожидания нажатой клавиши, проверяет, не переполнился ли буфер, рассчитанный на 6 цифровых клавиш. Если буфер переполнился, то подпрограмма очищает буфер. Если нажата клавиша #, то буфер очищается. Если нажата *, то подпрограмма проверяет количество нажатых клавиш (не менее 3), и производит поиск кода в EEPROM. Если код не найден, то буфер очищается. Очистка буфера сопровождается длинным писком и желтым светодиодом. Если код найден, то если это мастер-код выполняется подпрограмма входа в режим программирования, если код доступа, то открывается управляющее реле. Время открывания читается из EEPROM.

2)

Стандартная библиотека шаблонов STL (англ. standard template library) — набор шаблонов функций и классов в языке C++, включающий в себя различные контейнеры данных (список, очередь, множество, отображение, хэштаблица, очередь с приоритетами) и базовые алгоритмы (сортировка, поиск).

Контейнеры

STL контейнеры делятся на последовательные: vector, deque, list и ассоциативные: set, multiset, map, multimap.

Контейнер

Описание

последовательныее контейнеры (упорядоченные списки)

Vector

C-подобный динамический массив произвольного доступа с автоматическим изменением размера при добавлении/удалении элемента. Добавление-удаление элемента в конец vector занимает амортизированное О(1) время, та же операция в начале или середине vector- О(n). Существует специальный вариант vector для типа bool, уменьшающий потребную память за счет битового хранения .

List

Двух-связанный список, элементы которого в произвольных кусках памяти, в отличие от непрерывной памяти vector. Медленный поиск и доступ (О(n)), быстрая вставка и удаление (О(1)).

Deque

vector с возможностью быстрой вставки-удаления не только в конец, но и в начало.

basic_string

контейнер заточенный на обработку строк - хранит в памяти элементы в последовательно, что даёт быстрый доступ ко всей последовательности

ассоциативные контейнеры (неупорядоченные списки)

Set

сортированнoe множество, такой что вставка/удаление нового элемента не приводит к компрометации итератора указывающего на него. Обеспечивает стандартные операции над множествами типа объединения, пересечения, вычитания.Тип элементов set должен реализовывать оператор сравнения operator <. Реализован на основе технологии само-балансирующего поиска по двоичному дереву.

Multiset

то же что и set, кроме того позволяет хранить одинаковые элементы.

Map

сортированный ассоциативный массив пар элементов, позволяющий установить соответствие между элементами пары. Один из элементов пары принято называть ключем, другой - величиной. При этом тип ключа должен реализовывать оператор сравнения <, либо перегружать функцию сравнения.

multimap

то же что и map, плюс возможность хранить разные величины под одним и тем же ключем.

hash_set

hash_multiset hash_map hash_multimap

подобны set, multiset, map, multimap, соответственно, но реализованы на основе хеш таблицы. Ключи не сортированы, для типа ключа должна существовать хэш функция. Эти контейнеры не входят в стандарт C++, однако включены в SGI STL расширение, и в ряд распространённых библиотек, в частности в GNU C++ Library.

другие типы контейнеров

Bitset

Похож на vector фиксированного размера. Предназначен для хранения последовательностей битов. Минимизирован по размеру памяти.

Valarray

C-подобный массив в духе vector. Разработан для скоростных численных расчетов, оптимизирован для векторных супер компьютеров. Пригоден для скалярных процессоров работающих на основе идеологии SIMD

Итератор (англ. iterator) — объект, предназначенный для предоставления доступа к элементам некоторой последовательности. В таких языках, как Оберон и Глагол, называется также бегуно́к и представлен как тип данных. В простейшем случае итератором в низкоуровневых языках является указатель.

Использование итераторов в обобщённом программировании позволяет реализовать универсальные алгоритмы работы с контейнерами или любыми последовательностями.

3) Наследование – это свойство объекта, которое заключается в том, что характеристики одного объекта (объекта-предка) могут передаваться другому объекту (объекту-потомку) без их повторного описания. Наследование упрощает описание объектов.

Соседние файлы в папке Ответы на билеты