РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
455 of 815 menu

Метод value_or

Метод value_or класса expected возвращает значение, хранящееся в объекте. Если объект содержит ожидаемое значение, возвращается именно оно. Если же объект находится в состоянии ошибки, метод возвращает альтернативное значение, переданное в качестве параметра. В единственный параметр мы передаем значение, которое следует вернуть в случае отсутствия ожидаемого значения.

Синтаксис

expected.value_or(default_value)

Пример

Давайте создадим объект expected с ожидаемым значением и получим его через метод value_or, передав в качестве запасного значения число 0:

#include <iostream> #include <expected> using namespace std; int main() { expected<int, string> exp = 42; int res = exp.value_or(0); cout << res << endl; return 0; }

Результат выполнения кода:

42

Пример

А теперь создадим объект expected, содержащий ошибку, и снова вызовем метод value_or с запасным значением 0:

#include <iostream> #include <expected> #include <string> using namespace std; int main() { expected<int, string> exp = unexpected("error"); int res = exp.value_or(0); cout << res << endl; return 0; }

Результат выполнения кода:

0

Смотрите также

  • класс expected,
    который представляет значение или ошибку
  • метод has_value,
    который проверяет наличие ожидаемого значения
  • метод value,
    который возвращает ожидаемое значение
  • метод error,
    который возвращает хранимую ошибку
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить