ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ В C++ (4-Е ИЗДАНИЕ) (часть 2) онлайн

Функции

Функции представляют собой основу, на которой строится любая программа С++. Программа FIRST состоит из единственной функции с названием main().

В состав этой функции не входят две первые строчки кода, начинающиеся со слов #include и using (мы раскроем смысл действий, заключенных в этих строках, чуть позже).

Как мы уже говорили в главе 1, функция может входить в состав класса, и в этом случае она называется методом класса. Тем не менее, функции могут су- ществовать и отдельно от классов. Поскольку наших знаний сейчас недостаточ- но для того, чтобы говорить о классах, мы будем рассматривать лишь функции, которые являются независимыми, как функция main() в нашем примере.

Имена функций

Круглые скобки, идущие вслед за именем main(), являются отличительной чертой функций: если бы их не было, то компилятор не смог бы отличить имя переменной или другого элемента программы от имени функции. Когда мы будем использовать имена функций в объяснениях, мы всегда будем придер- живаться соглашения, принятого в C++, и ставить круглые скобки после име- ни функции. Позже мы увидим, что в скобках могут указываться аргументы функций — имена переменных, значения которых программа передает в функ- цию.

Слово int, предваряющее имя функции, указывает на то, что эта функция возвращает значение типа int. Пока не стоит ломать голову над смыслом этой фразы: мы рассмотрим типы данных в этой главе, а типы значений, возвраща- емых функциями, — в главе 5.

Тело функции

Тело функции заключено в фигурные скобки. Фигурные скобки играют ту же роль, что и ключевые слова BEGIN и END, встречающиеся в некоторых других языках программирования: они определяют границы блока операторов програм- мы. Фигурные скобки, обрамляющие тело функции, обязательны. В нашем при- мере тело функции состоит всего лишь из двух операторов: один из них начина- ется словом cout, другой — словом return. Разумеется, функция может включать в себя и большее число операторов.

Функция main()

Когда программа на языке C++ запускается на выполнение, первым исполня- емым оператором становится первый оператор функции main() (по крайней мере, это справедливо для консольных программ). Программа может состоять из множества функций, классов и прочих элементов, но при ее запуске управление всегда передается функции main(). Если в программе не содержится функции с именем main(), то при попытке запустить такую программу будет выведено сообщение об ошибке.

В большинстве программ, написанных на C++, реальные действия, выпол- няемые этими программами, сводятся к вызову функцией main() методов раз- личных объектов. Кроме того, функция main() может вызывать другие, незави- симые функции. Иллюстрация вышесказанного приведена на рис. 2.1.

main()

Рис. 2.1. Объекты, функции и main()

 

5