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

Лекции

  • Отзывы
  • О нас
  • CS50
Начать
Начать обучение
Начать обучение
  • Мое обучение
  • Курсы
  • Университет
  • Карта квестов
  • Лекции
  • std::error_code — коды ошибок для I/O, filesystem

    C++ SELF
    55 уровень,0 лекция
    Разбираем, как в C++ аккуратно работать с ожидаемыми сбоями «внешнего мира» (I/O, файлы, права доступа) без исключений: что такое std::error_code, почему «пустой код» означает успех, как читать message()/ value(), сравнивать причины через std::errc и std::make_error_code, а также как выглядит типичный стиль API с out-параметром и проверкой if ( ec) рядом с вызовом.
    Открыта
  • Единая политика ошибок — категории, сообщения

    C++ SELF
    55 уровень,1 лекция
    Разбираем, как в консольном C++‑приложении оформить ошибки как данные: модель enum class ErrorKind + Error, единый формат вывода через print_error(), дисциплину «одна ошибка → один отчёт» и стабильные exit codes. Практика на мини‑CLI с std::variant и центральной точкой политики в run_app()/ main().
    Открыта
  • template <typename T>: код для любого типа

    C++ SELF
    55 уровень,2 лекция
    Разбираем, как в C++ шаблоны функций позволяют убрать копипасту: пишем одну «заготовку» через template < typename T >, понимаем инстанцирование ( my_min < int >, my_min < double >), «контракт по операциям» (нужны operator <, operator <<, operator +), выбираем правильные параметры ( const T &, T &, T), и собираем мини-проект с универсальными утилитами для std::vector.
    Открыта
  • Вывод типа и случаи, где он не срабатывает

    C++ SELF
    55 уровень,3 лекция
    Разбираем вывод аргументов шаблона (template argument deduction) в C++: как компилятор выводит T из аргументов, почему один T не может быть одновременно int и double, в каких сигнатурах вывод невозможен (когда T встречается только в возвращаемом типе), и как выбор параметра T & vs const T & влияет на прием временных значений. Отдельно обсуждаем “коварные” аргументы: {...}, nullptr, строковые литералы, и даём быстрый чеклист диагностики + практический мини‑пример “Expense Tracker”.
    Открыта
  • Класс‑шаблон на простом примере

    C++ SELF
    55 уровень,4 лекция
    Разбираем, что такое шаблон класса в C++: чем отличается «заготовка» от конкретного типа, что означают параметр и аргумент шаблона, как компилятор инстанцирует Box<int> и Box<std::string>, и какие требования вы неявно предъявляете к T. На примерах Box<T>, Setting<T> и Repository<T> (для приложения TaskPilot) показываем базовый синтаксис, работу с const-методами, контракт по операциям и типичные ошибки.
    Открыта
Обучение
  • Курсы программирования
  • Регистрация
  • Курс Java
  • Помощь по задачам
  • Цены
Сообщество
  • Пользователи
  • Статьи
  • Форум
  • Чат
  • Истории успеха
  • Активности
Компания
  • О нас
  • Контакты
  • Отзывы
  • FAQ
  • Поддержка
JavaRushJavaRush — это интерактивный онлайн-курс по изучению Java-программирования c нуля. Он содержит 1200 практических задач с проверкой решения в один клик, необходимый минимум теории по основам Java и мотивирующие фишки, которые помогут пройти курс до конца: игры, опросы, интересные проекты и статьи об эффективном обучении и карьере Java‑девелопера.
Подписывайтесь
Язык интерфейса
Русский
English Українська
"Программистами не рождаются" © 2026 JavaRush
MastercardVisa
"Программистами не рождаются" © 2026 JavaRush