Программисты больше не нужны!
Нужны ИИ инженеры! Хотите научиться? Вступайте в канал!
462 of 824 menu
◀ ▶

Метод value

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

Синтаксис

expected.value() expected.value() const

Пример

Давайте создадим объект expected, который содержит значение, и выведем его на экран:

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

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

42

Пример

Давайте создадим объект expected, который содержит ошибку, и попробуем вызвать метод value. Это приведет к генерации исключения:

#include <iostream> #include <expected> #include <string> using namespace std; int main() { expected<int, string> exp = unexpected("error"); try { cout << exp.value() << endl; } catch (const bad_expected_access<string>& e) { cout << "Exception: " << e.error() << endl; } return 0; }

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

"Exception: error"

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

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