Функции в C++ объявляют с типом результата, параметры можно передать копией или ссылкой. Строки удобнее всего хранить в типе string.
Что нужно знать
- void имя(параметры) — процедура; тип имя(параметры) + return — функция. Функцию объявляют до места вызова (выше main).
- По значению int x — функция получает копию; по ссылке int &x — работает с самой переменной вызывающего.
- Обмен: swap(a, b) или через третью переменную. Python-запись a, b = b, a в C++ не работает.
- Логическая функция: bool f(...) { return условие; }. cout выводит true/false как 1/0.
- Рекурсия — как в Python: базовый случай + вызов с меньшим аргументом.
- string (#include <string>): s[i], s.size(), s + t, s.substr(начало, длина), s.find(t) (нет — string::npos), s.erase(начало, сколько), s.insert(позиция, t).
- Преобразования: stoi(s) — строка → int, to_string(n) — число → строка. (int)c — код символа.
- Строки сравниваются по кодам символов: заглавные латинские (65–90) меньше строчных (97–122).
Где чаще всего ошибаются
- Ждать, что функция с параметром int x изменит переменную вызывающей программы.
- Ожидать слова true/false в выводе cout вместо 1/0.
- Путать второй аргумент substr и erase (это длина, а не конечный индекс).
- Переносить в C++ питоновские конструкции: a, b = b, a, len(s), s[-1].
Проверить себя
По этой же теме курса есть проверочная работа из 15 заданий на 25 минут. Проверка автоматическая, результат виден сразу — и по работе целиком, и по каждой теме.
Программирование на Python и C++ · 8 класс · C++: функции, ссылки, рекурсия и строки