Статьи

Учебные материалы по языку C++ — от основ до продвинутых тем

Функции в C++

Страница 16 из 43 · 2026-10-25 · 2 мин чтения

Функции в C++

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

Функция объединяет логически связанную операцию под именем. Она помогает избежать дублирования и разбить программу на понятные части.

int Add(int a, int b) {    return a + b;}int main() {    std::cout << Add(2, 3) << '\n';}

int перед именем — тип возвращаемого значения; a и b — параметры. return завершает выполнение и возвращает результат вызывающему коду.

Объявление и определение

Объявление сообщает компилятору сигнатуру функции, а определение содержит тело:

int Multiply(int a, int b); // объявлениеint Multiply(int a, int b) { // определение    return a * b;}

Это позволяет разместить объявление в заголовочном файле, а реализацию — в .cpp.

void

Если функция не возвращает значение, укажи void:

void PrintMessage() {    std::cout << "Готово\n";}

В функции с возвращаемым типом, отличным от void, нужно обеспечить корректный возврат значения по всем путям выполнения.

Параметры и аргументы

Параметры перечисляются в объявлении функции. Аргументы — конкретные значения, передаваемые при вызове. По умолчанию обычные параметры передаются по значению: функция получает копию.

Область видимости

Переменные, объявленные внутри функции, локальны. Они не доступны снаружи, если не переданы через параметры или не возвращены. Глобальные переменные существуют на уровне файла/программы, но чрезмерное использование глобального состояния усложняет тестирование и сопровождение.

const и ссылки

Для чтения большого объекта без копирования можно принимать const-ссылку:

void PrintName(const std::string& name) {    std::cout << name << '\n';}

Функция не сможет изменить объект через такую ссылку.

Итог

Хорошая функция выполняет одну понятную задачу, имеет ясное имя и минимально необходимый набор параметров. Разделяй объявление и определение, когда это упрощает организацию проекта.