Структура программы на языке программирования C++
Функция main.
Рассмотрим простую программу на C++
Программа, которая выводит в консольное окно текст Hello world!
#include <iostream>
using namespace std;
int main()
{
cout << "Hello world!" << endl;
return 0;
}
Каждая программа на языке C++, должна иметь минимум одну функцию, которая является точкой входа. Эта функция называется main(). Именно с этой функции начинается выполнение программы.
В приведенной выше программе функция main() объявленна в строке 5.
После компиляции и запуска проекта будут выполнены все инструкции которые идут после объявления функции main() и находятся в блоке начало и конец которого определяются фигурными скобками { }. Фигурные скобки, очень важный элемент языка, который указывает компилятору на начало и конец логического блока. Каждая инструкция, выполняет какое-то действие. Инструкции разделяются знаком - ";".
Функции в C++ начинаются с определения типа возвращаемого значения. В данном случае int main() - означает, что есть функция которая называется main и возвращает int - целое число. Какое-же число должно быть возвращено функцией main? В коде нашей программы, в строке 7 присутствует инструкция "return 0;", это означает, что при успешном выполнении всех инструкций функция main вернет число 0. Более подробно о функциях мы поговорим позже. В этом уроке нужно разобраться только с функцией main.
Комментарии.
Программы на C++ могут содержать комментарии. Комментарии это текст, который игнорируется компилятором, а значит не влияет на программу. Комментарии позволяют делать заметки, замечания и генерировать документацию.
Комментарии бывают однострочными, они начинаются с двойной косой черты "//" и заканчиваются концом строки, и многострочными которые начинаются символом "/*" и заканчиваются символом "*/", а между ними находится текст.
Использование комментариев в программе на C++
#include <iostream>
using namespace std;
/* Это
многострочный
комментарий
*/
int main()
{
// это однострочный коментарий
cout << "Hello world!" << endl;
return 0;
}
Подключение библиотеки iostream.
В начале файла, самая первая директива, которая присутствует в main.cpp, #include <iostream> означает что подключается заголовочный файл библиотеки ввода-вывода. Эта библиотека нужна для того чтобы мы могли вводить данные с клавиатуры и выводить результат программы на экран (в консоль). Вообще, эта библиотека может намного больше, но об этом позже.
С помощью директивы #include … также могут подключаться и другие заголовочные файлы библиотек, о них мы поговорим позже, пока нужно запомнить библиотеку iostream (i - input (ввод) o - output (вывод) stream - поток).
Если вы запускали консольный проект из прошлого урока, или код в начале этого урока, вы видели окно, которое выводит в консоль сообщение "Hello World!". Инструкция, которая выполняет это, находится в строке 6. Эта инструкция состоит из объекта cout, операторов сдвига "<<", текстовой строки заключенной в двойные кавычки и оператора "endl", который переносит текстовый курсор на новую строку.
Объект cout как раз находится в заголовочном файле в библиотеки iostream.
Следующая инструкция using namespace std; можно перевести как - используй пространство имен std.
При изучении языка программирования, у Вас возникнет необходимость писать свои собственные функции и использовать готовые библиотеки, в которых уже написана нужная вам функция. Где гарантия, что Вы не создадите такую функцию, имя которой не будет занято в другой библиотеки? Такой гарантии нет. Для того чтобы избежать конфликта имен, в C++ используются пространства имен (namespace).
Для примера: представим что в библиотеке есть нужная вам книга, под названием "Сеть", в которой описывается функционирование сети Интернет. Кроме нужной Вам книги, есть еще несколько книг под названием "Сеть", одна книга это художественное произведение, другая это каталог рыболовных сетей. В библиотеке книги каталогизированны. Ваша книга находится в разделе "Информационные технологии". Теперь чтобы получить доступ к нужной Вам книге, придется проложить путь: раздел "Информационные технологии", книга "Сеть". Таким образом Вы получите именно ту книгу, которая Вам нужна.
Таким образом инструкция using namespace std; - говорит компилятору что неизвесные книги нужно поискать в разделе (namespace) std.