JavaRush
Акция
Университет
Java FullStack
Python FullStack
AI Native Developer
new
Web FullStack
Обучение
Курсы
Задачи
Опросы
Игры
Помощь
График пинков
Стажировка
Сообщество
Пользователи
Форум
Чат
Статьи
Истории успеха
Активности
Отзывы
Подписки
Светлая тема

Лекции

  • Отзывы
  • О нас
  • CS50
Начать
Начать обучение
Начать обучение
  • Мое обучение
  • Курсы
  • Университет
  • Карта квестов
  • Лекции
  • Знакомство с функциями

    C++ SELF
    14 уровень,0 лекция
    В этой лекции разбираем, зачем нужны функции в C++ и как с их помощью превращать «простыню» кода в понятный сценарий: делаем main() «тонким», выносим действия в отдельные функции вроде print_menu(), read_line(), print_tasks(), add_task() и clear_tasks(). На примере мини‑приложения со списком дел на std::vector<std::string> потренируем декомпозицию, научимся выбирать границы ответственности и избегать типичных ошибок (копипаст, «функция делает всё сразу», слишком общие имена).
    Открыта
  • Сигнатура функции: параметры и тип

    C++ SELF
    14 уровень,1 лекция
    В этой лекции разбираем сигнатуру функции в C++: из чего она состоит (тип возврата, имя, список параметров), чем параметры отличаются от аргументов, как выбирать тип результата ( int, double, bool, void, std::string) и почему порядок объявлений важен для компилятора. На мини‑проекте «TextLab» соберём сценарий в main() и увидим, как сигнатуры делают код читаемым и безопасным.
    Открыта
  • Прототипы и порядок кода

    C++ SELF
    14 уровень,2 лекция
    Разбираем, почему компилятор C++ читает файл сверху вниз и «не видит» функции, если их объявление встречается позже места вызова. Научимся отличать объявление (прототип вида int sum( int, int) ;) от определения (реализации с телом), правильно организовывать файл: прототипы → main → реализации, и избегать типичных ошибок (забытый ;, несоответствие сигнатур, путаница «функция vs переменная», дублирование определений).
    Открыта
  • return и ранний выход

    C++ SELF
    14 уровень,3 лекция
    В этой лекции разбираем оператор return в C++: чем отличаются формы return expr ; и return ;, почему компилятор требует «вернуть значение на всех путях» для функций типа int/ bool, и как ранний выход (guard clauses) упрощает код, убирая глубокие if/ else. На примерах поиска в циклах и мини‑приложения NoteKeeper увидим, как писать линейный сценарий и корректно завершать main() кодом 0 или 1.
    Открыта
  • Перегрузка и аргументы по умолчанию

    C++ SELF
    14 уровень,4 лекция
    Разбираем два способа сделать API функций в C++ удобным: перегрузку (несколько функций с одним именем, но разными параметрами) и аргументы по умолчанию (значения для «типичных» хвостовых параметров). На примерах утилит для консольного приложения TaskPad ( print_line(), print_menu(), read_line()) увидим правила выбора перегрузки компилятором, ограничение «нельзя перегрузить только по возвращаемому типу», а также главную ловушку — неоднозначность при смешивании перегрузок и default-значений.
    Открыта
Обучение
  • Курсы программирования
  • Регистрация
  • Курс Java
  • Помощь по задачам
  • Цены
Сообщество
  • Пользователи
  • Статьи
  • Форум
  • Чат
  • Истории успеха
  • Активности
Компания
  • О нас
  • Контакты
  • Отзывы
  • FAQ
  • Поддержка
JavaRushJavaRush — это интерактивный онлайн-курс по изучению Java-программирования c нуля. Он содержит 1200 практических задач с проверкой решения в один клик, необходимый минимум теории по основам Java и мотивирующие фишки, которые помогут пройти курс до конца: игры, опросы, интересные проекты и статьи об эффективном обучении и карьере Java‑девелопера.
Подписывайтесь
Язык интерфейса
Русский
English Українська
"Программистами не рождаются" © 2026 JavaRush
MastercardVisa
"Программистами не рождаются" © 2026 JavaRush