Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






  • Как продвинуть сайт на первые места?
    Вы создали или только планируете создать свой сайт, но не знаете, как продвигать? Продвижение сайта – это не просто процесс, а целый комплекс мероприятий, направленных на увеличение его посещаемости и повышение его позиций в поисковых системах.
    Ускорение продвижения
    Если вам трудно попасть на первые места в поиске самостоятельно, попробуйте технологию Буст, она ускоряет продвижение в десятки раз, а первые результаты появляются уже в течение первых 7 дней. Если ни один запрос у вас не продвинется в Топ10 за месяц, то в SeoHammer за бустер вернут деньги.
  • Сервис онлайн-записи на собственном Telegram-боте
    Тот, кто работает в сфере услуг, знает — без ведения записи клиентов никуда. Мало того, что нужно видеть свое расписание, но и напоминать клиентам о визитах тоже. Нашли самый бюджетный и оптимальный вариант: сервис VisitTime.
    Для новых пользователей первый месяц бесплатно.
    Чат-бот для мастеров и специалистов, который упрощает ведение записей:
    Сам записывает клиентов и напоминает им о визите;
    Персонализирует скидки, чаевые, кэшбэк и предоплаты;
    Увеличивает доходимость и помогает больше зарабатывать;

Введение в ООП






Применение классов лежит в основе объектно-ориентированного программирования (ООП) – программирования с использованием объектов.

Три кита ООП – инкапсуляция, наследование, полиморфизм.

Под инкапсуляцией (encapsulation) понимают объединение данных с функциями их обработки в сочетании с сокрытием ненужной для использования этих данных информации.

Наследование состоит в возможности создания иерархии классов, когда потомки наследуют все свойства своих предков, могут их изменять и добавлять новые.

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

2. Язык C++: ввод-вывод

Известно, что операции ввода-вывода имеют сильную аппаратно-операционную зависимость. По этой причине в C/C++ средства ввода-вывода отделены от языка и вынесены в отдельные библиотеки. В языке C, предшественнике C++, операции ввода-вывода были реали­зованы с помощью набора стандартных функций библиотеки stdio. В C++ для ввода или вывода данных используется набор стандартных классов, кото­рые объединены в объектно-ориентированной библиотеке iostream.

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

В C/C++ реализован механизм ввода-вывода, не зависящий от особенностей работы разнообразных устройств, осуществляющих обмен данными с внешними носителями информации. Программа работает не с физическими, а с логическими устройствами ввода-вывода – потоками. Название это, возможно, произошло от того, что информация вводится и выводится в виде потока бай­тов – значение за значением. Ввод информации осуществляется из одного или нескольких входных потоков, вывод программа производит в один или несколько выходных потоков. Поток можно связать с файлом. Все устройства ввода-вывода различны, но все потоки функционируют одинаково. Одна и та же функция может выводить данные и на экран и в файл, читать данные с клавиатуры и из файла. Различия заключаются только в том, как создаются потоки и как они привязываются к нужным файлам.

Потоки

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

Поток определяется как последовательность байтов и не зависит от конкретного устройства, с которым взаимодействует программа при передаче данных (оперативная память, файл на диске, клавиатура или принтер). Ввод данных называют извлечением из потока или чтением, вывод данных – помещением (включением) в поток или записью. Взаимодействие с потоком для увеличения скорости передачи данных производится, как правило, через специальную область оперативной памяти – буфер. Фактическая передача данных выполняется при выводе после заполнения буфера, а при вводе – если буфер исчерпан.

По направлению передачи данных потоки можно разделить на входные (данные вводятся в память), выходные (данные выводятся из памяти) и двунаправленные (допускающие как ввод, так и вывод данных).

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

Стандартные потоки предназначены для передачи данных от клавиатуры и на экран дисплея, файловые потоки – для обмена информацией с файлами, расположенными на носителях данных (например, на дисках), а строковые потоки – для работы с массивами символов в оперативной памяти.

Для поддержки потоков библиотека C++ содержит иерархию классов, построенную на основе двух базовых классов – ios и streambuf. Класс ios содержит общие для ввода и вывода поля и методы, класс streambuf обеспечивает буферизацию потоков и их взаимодействие с физическими устройствами. От этих классов наследуется класс istream для входных потоков и ostream – для выходных. Два последних класса являются базовыми для класса iostream, реализующего двунаправленные потоки. Ниже в иерархии классов располагаются классы файловых (ifstream, ofstream, fstream) и строковых потоков.






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.