Более широкие философские взгляды на компьютеры, программы и программирование изложены в главе 1. Здесь мы рассмотрим код, начиная с очень простой программы, а также несколько инструментов и методов, необходимых для ее выполнения.
2.2. Классическая первая программа
Приведем вариант классической первой программы. Она выводит на экран сообщение.
// Эта программа выводит на экран сообщение "Hello, World!"
#include "std_lib_facilities.h"
int main() // Программы на C++ начинаются с выполнения функции main
{
cout << "Hello, World!\n"; // вывод "Hello, World!"
return 0;
}
Этот набор команд, которые должен выполнить компьютер, напоминает кулинарный рецепт или инструкции по сборке новой игрушки. Посмотрим, что делает каждая из строк программы, начиная с самого начала:
cout << "Hello, World!\n"; // вывод "Hello, World!"
Hello, World!
, за которыми следует символ перехода на новую строку; иначе говоря, после вывода символов Hello,World!
курсор будет установлен на начало новой строки.
В языке С++ строковые литералы выделяются двойными кавычками ("
); т.е. "Hello, Word!\n"
— это строка символов. Символ \n
— это специальный символ, означающий переход на новую строку. Имя cout
относится к стандартному потоку вывода. Символы, “выведенные в поток cout
” с помощью оператора вывода <<
, будут отображены на экране. Имя cout
произносится как “see-out”, но является аббревиатурой “haracter put stream” (“поток вывода символов”). Аббревиатуры довольно широко распространены в программировании. Естественно, аббревиатура на первых порах может показаться неудобной для запоминания, но привыкнув, вы уже не сможете от них отказаться, так как они позволяют создавать короткие и управляемые программы.
Конец строки
// вывод "Hello, World!"
является комментарием. Все, что написано после символа //
(т.е. после двойной косой черты (/
), которая называется слэшем), считается комментарием. Он игнорируется компилятором и предназначен для программистов, которые будут читать программу. В данном случае мы использовали комментарии для того, чтобы сообщить вам, что именно означает первая часть этой строки.
Комментарии описывают предназначение программы и содержат полезную информацию для людей, которую невозможно выразить в коде. Скорее всего, человеком, который извлечет пользу из ваших комментариев, окажетесь вы сами, когда вернетесь к своей программе на следующей неделе или на следующий год, забыв, для чего вы ее писали. Итак, старайтесь хорошо документировать свои программы. В разделе 7.6.4 мы обсудим, как писать хорошие комментарии.
Первая строка программы — это типичный комментарий, которая сообщает читателям, что будет делать программа.
// Эта программа выводит на экран сообщение "Hello, World!"
Эти комментарии полезны, так как по коду можно понять, что делает программа, но нельзя выяснить, чего мы на самом деле хотели. Кроме того, в комментариях мы можем намного лаконичнее объяснить цель программы, чем в самом коде (как правило, более подробном). Часто такие комментарии размещаются в первых строках программы. Помимо всего прочего, они напоминают, что мы пытаемся сделать.
Строка
#include "std_lib_facilities.h"
представляет собой директиву #include
. Она заставляет компьютер “включить” возможности, описанные в файле std_lib_facilities.h
. Этот файл упрощает использование возможностей, предусмотренных во всех реализациях языках С++ (стандартной библиотеке языка С++).