Объектно-ориентированное программирование
Язык программирования C++
Microsoft Visual Studio 2019
Все эти комментарии можно удалить:
Также необходимо в главном меню Visual Studio выбрать Средства, Параметры, Отладка, Общие. Установить флажок на “Автоматически закрыть окно при остановке отладки”:
Нажать F5 для запуска отладки.
Чтобы окно консоли не закрывалось, можно дописать команду
system (“pause”);
Язык C++
Стандартная библиотека
iostream
cout
В стандартной реализации языка C++ имеется набор файлов, называемый “стандартная библиотека”. В стандартной
библиотеке есть файл iostream , в котором определяются различные сущности, в том числе объект cout .
В строке #include помещена директива (команда) препроцессора, обеспечивающая включение ( include ) в программу средств связи со стандартными потоками ввода и вывода данных. Указанные средства находятся в файле с именем iostream.h (мнемоника: “ i ” (input) – ввод, “ o ” (output) – вывод, stream – поток, “ h ” (head) – заголовок). Стандартным потоком вывода по умолчанию считается вывод на экран дисплея. Стандартный поток ввода обеспечивает чтение данных от клавиатуры.
Примечание: использование суффикса «.h» при подключении стандартных файлов («#include ») — это устаревший подход.
Чтобы каждый раз не дописывать std:: , нужно поместить директиву using в верхнюю часть cpp-файла:
4 строка является заголовком функции с именем main() . Любая программа на языке C++ должна включать одну и только одну функцию с этим именем. Именно с нее всегда начинается выполнение программы. Перед именем main() помещено служебное слово void – спецификатор типа, указывающий, что функция main() в данной программе не возвращает никакого значения. Круглые скобки после main() требуются в соответствии с форматом (синтаксисом) заголовка любой функции. В них помещается список параметров. В этом примере параметры не нужны, и список пуст.
Тело функции – это последовательность описаний, определений и операторов. Тело функции должно быть заключено в фигурные скобки .
Каждое описание, определение или оператор заканчивается символом ;
В теле этой функции main() есть оператор
cout
Информация для вывода передается объекту cout с помощью операции
Чтобы использовать русский язык в консоли, нужно добавить строку:
Непечатаемый символ \n можно использовать в любом месте строки:
Также к непечатаемым символам относится символ табуляции \t , который тоже можно использовать в любом месте строки:
Если требуется вывести обратный слэш:
Для перевода курсора на новую строку также можно использовать endl :
В 5 и 6 строках текста программы – однострочные комментарии, каждый из которых начинается парой символов // и заканчивается неотображаемым символом "конец строки".
В 10-12 строках – реже используемый многострочный комментарий.
Комментарии нужны не для объяснения написанного. Они должны выполнять роль "путевых заметок". А код должен быть самодокументируемым : имена идентификаторов (переменных, функций и т.д.) должны быть осмысленными.
Одна из принципиальных особенностей языка C++, называемая перегрузкой или расширением действия стандартных операций , заключается в том, что лексема
До выполнения программы необходимо подготовить ее текст в файле с расширение .cpp ; передать этот файл на компиляцию и устранить синтаксические ошибки, выявленные компилятором; безошибочно откомпилировать (получится объектный файл с расширением .obj ); дополнить объектный файл нужными библиотечными функциями (компоновка) и получить исполняемый модуль программы в файле с расширением .exe.
Перед шагом компиляции показан шаг препроцессорной обработки текста программы. В примере с Hello, World! Препроцессор обрабатывает директиву #include и подключает к исходному тексту программы средства для обмена с дисплеем (для поддержки операции
Если исходный текст программы подготовлен в файле hello.cpp , то препроцессор сформирует полный текст программы, компилятор создаст объектный файл hello.obj , выбрав (по умолчанию) для него указанное имя, а компоновщик (редактор связей, Linker) дополнит программу библиотечными функциями, например, для работы с объектом cout, и построит модуль hello.exe .
Особенности выполнения перечисленных действий зависят от конкретного компилятора языка C++ и от ОС.
Чтобы автоматизировать весь процесс компиляции, используется IDE.
Ошибки
1. Ошибки компиляции (например, синтаксические ошибки) – обнаруживаются на этапе компиляции. Чаще всего это опечатки: пропущенные фигурные скобки, кавычки или точка с запятой, неправильное написание идентификаторов. Такие ошибки легко обнаружить, так как компилятор сам указывает, где они были допущены и что стало их причиной.
Компилятор также может выдавать сообщения с предупреждения ми. Предупреждения следует расценивать как ошибки и своевременно исправлять. Например, это может быть предупреждение об объявленной, но не использованной переменной.
2. Ошибки компоновки – эти ошибки возникают в процессе компоновки (связывания). Скорее всего программа не может найти какие-то данные, ссылки на которые в ней имеются. Обычно для устранения таких ошибок достаточно исправить проблемную ссылку.
3. Ошибки времени выполнения (runtime error) – возникают при запуске исполняемого файла/во время работы программы. Причинами таких ошибок может быть неправильный ввод данных пользователем или попытка деления на ноль.
4. Логические ошибки. Относятся к ошибкам времени выполнения и проявляются в некорректной работе программы.
Причины этих ошибок обнаружить сложнее.
Задачи:
1. Создать новый проект. Сохранить. Используя один cout , вывести на экран информацию о себе следующим образом:
2. Создать новый проект. Сохранить. Выполнить следующий код: