Вступить в клуб →
средняявопросСовременный C++: move-семантика, шаблоны, лямбды

Поиск пользователя «работает» в тестах, а в проде отдаёт мусор

std::optional<User> findUser(int id);

std::string greeting(int id) {
    auto user = findUser(id);
    return "Привет, " + user->name;
}

В тестах все пользователи существуют. В проде для удалённых аккаунтов сервис иногда отдаёт пустое или случайное имя, иногда падает. Исключений в логах нет. Почему?

  • -> на пустом optional — UB без проверки
  • -> на пустом optional бросает исключение
  • Пустой optional возвращает User по умолчанию
  • optional нельзя возвращать из функции

🔒 Проверка ответа — для участников клуба

  • Проверка ответа
  • Подсказка, если застряли
  • Разбор с объяснением, почему так
  • Прогресс по всем задачам и виртуальные собеседования
Зарегистрироваться →

Регистрация занимает минуту

Другие задачи раздела