Самостоятельная работа 1 по дисциплине: "Программирование 1"


Download 386.53 Kb.
bet2/8
Sana01.03.2023
Hajmi386.53 Kb.
#1239371
TuriСамостоятельная работа
1   2   3   4   5   6   7   8
Bog'liq
Primer samost raboty1 (1)

Теоретическая часть
История языка программирования C++
C++ компилируемый язык программирования общего назначения, сочетает свойства как высокоуровневых, так и низкоуровневых языков программирования. В сравнении с его предшественником, языком программирования С (Си), наибольшее внимание уделено поддержке объектно-ориентированного и обобщённого программирования. Название «язык программирования C++» происходит от языка программирования C (Си), в котором унарный оператор ++ обозначает инкремент переменной.
Язык программирования C++ широко используется для разработки программного обеспечения. А именно, создание разнообразных прикладных программ, разработка операционных систем, драйверов устройств, а также видео игр и многое другое. Существует несколько реализаций языка программирования C++ — как бесплатных, так и коммерческих. Их производят проекты: GNU, Microsoft и Embarcadero (Borland). Проект GNU — проект разработки свободного программного обеспечения (СПО).
Язык программирования С++ был создан в начале 1980-х годов, его создатель сотрудник фирмы Bell Laboratories — Бьёрн Страуструп. Он придумал ряд усовершенствований к языку программирования C, для собственных нужд. То есть изначально не планировалось создания языка программирования С++. Ранние версии языка С++, известные под именем «Cи с классами», начали появляться с 1980 года. Язык C (Си) , будучи базовым языком системы UNIX, на которой работали компьютеры фирмы Bell, является быстрым, многофункциональным и переносимым. Страуструп добавил к нему возможность работы с классами и объектами, тем самым зародил предпосылки нового, основанного на синтаксисе С (Си), языка программирования. Синтаксис C++ был основан на синтаксисе C (Си), так как Бьёрн Страуструп стремился сохранить совместимость с языком C (Си). В 1983 году произошло переименование языка из «Cи с классами» в «язык программирования C++». В него были добавлены новые возможности: виртуальные функции, перегрузка функций и операторов, ссылки, константы и многое другое. Его первый коммерческий выпуск состоялся в октябре 1985 года. Язык программирования C++ является свободным, то есть никто не обладает на него правами.
В C++ доступны следующие встроенные типы. Типы C++ практически полностью повторяют типы данных в C:
Символьные: char, wchar_t (char16_t и char32_t, в стандарте C++11).
Целочисленные знаковые: signed char, short int, int, long int (и long long, в стандарте C++11).
Целочисленные беззнаковые: unsigned char, unsigned short int, unsigned int, unsigned long int(и unsigned long long, в стандарте C++11).
С плавающей запятой: float, double, long double.
Логический: bool, имеющий значения true или false.
Операции сравнения возвращают тип bool. Выражения в скобках после if, while приводятся к типу bool.
Язык ввёл понятие ссылок, а начиная с одиннадцатой версии стандарта rvalue-ссылки и передаваемые ссылки.
C++ добавляет к C объектно-ориентированные возможности. Он вводит классы, которые обеспечивают три самых важных свойства ООП: инкапсуляцию, наследование и полиморфизм.
В стандарте C++ под классом (class) подразумевается пользовательский тип, объявленный с использованием одного из ключевых слов class, struct или union, под структурой (structure) подразумевается класс, определённый через ключевое слово struct, и под объединением (union) подразумевается класс, определённый через ключевое слово union.
В теле определения класса можно указать как объявления функций, так и их определение. В последнем случае функция является встраиваемой (inline). Нестатические функции-члены могут иметь квалификаторы const и volatile, а также ссылочный квалификатор (& или &&).
Стандартные C++ библиотеки представляют собой наборы функций, констант, классов, объектов и шаблонов, которые расширяют язык С++ предоставляя базовую функциональность для выполнения различных задач, таких как: классы для взаимодействия с операционной системой, контейнеры данных, манипуляторы для работы с этими данными и наиболее используемые алгоритмы.
Все элементы стандартных библиотек С++ распределены по различным заголовочным файлам, которые необходимо подключать к программе. Только так можно использовать элементы этих библиотек. Стандартные библиотеки языка программирования С++: cmath, ctime, cstring, cstdlib, ios0 fstream, iostream и другие.
Стандартные библиотеки С++: заголовочные файлы ввода/вывода
В С++ программисту предоставляется возможность использовать абстракцию, которая называется потоки ввода/вывода. Данная абстракция специально разработана для выполнения операций ввода/вывода оперируя последовательностью символов, например: файлы или строки. Эта функциональность обеспечивается через несколько связанных классов, как показано на следующей схеме.

На схеме можно увидеть имена файлов, указанные сверху. Каждый класс имеет имя, стрелочками отображены отношения между классами. Черные прямоугольники — это объекты классов: cout — объект класса ostream, cin — объект класса istream и так далее.


Ключевое слово — это зарезервированные идентификаторы, которые имеют специальное значение для компилятора. Их использование в программе в качестве идентификаторов не допускается. Их можно использовать только в том смысле, в котором они определены.
Ключевые слова делятся на:

  • спецификаторы типов: char, double, enum, float, int, long, short struct, signed, union, unsigned, void, typedef

  • квалификаторы типов: const, volatile

  • квалификаторы классов памяти: auto, extern, register, static

  • операторы языка и идентификаторы специального назначения: break, continue,

do, for, goto, if, return, switch, while; default, cas else, sizeof

  • модификаторы и псевдопеременные: конкретный набор зависит от компилятора


  • C++ имеет зарезервированный набор из 84 слов (включая С++14) для собственного использования.

  • Эти cлова называются ключевыми словами (keywords), каждое из них имеет свое особое значение.




Download 386.53 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling