Основы · Первые программы

Функции

Разбиваем программу на понятные куски с именами

~30 мин 7 шагов

После урока ты сможешь

  • Объявлять функции с параметрами и возвращаемым значением
  • Делить задачу на функции, каждая из которых делает одно дело
  • Понимать область видимости и перегрузку

Шаг 1 из 7

Зачем нужны функции

Представь программу на 500 строк в одной main. Чтобы понять, что она делает, придётся прочитать всё. А если в трёх местах считается одно и то же, ошибку придётся исправлять трижды и в одном месте обязательно забудешь.

Функция — это кусок кода с именем. Её пишут один раз и вызывают сколько угодно. Хорошее имя сразу объясняет, что происходит:

main.cpp
#include <print>
​
int square(int x) {
    return x * x;
}
​
int main() {
    std::println("{}", square(4));
    std::println("{}", square(3) + square(4));
}

Разберём int square(int x):

  • int перед именем — тип возвращаемого значения;
  • square — имя функции;
  • (int x) — параметры: что функция получает на вход;
  • return x * x; — вернуть результат вызвавшему коду и выйти из функции.

Когда пишешь square(4), параметр x получает значение 4, тело выполняется, а вызов «превращается» в результат 16.

Проверь себя

Что выведет программа?

main.cpp
#include <print>
​
int square(int x) {
    return x * x;
}
​
int main() {
    std::println("{}", square(3) + square(4));
}
Enter — проверить, Shift+Enter — новая строка