< cpp‎ | utility‎ | expected
Utilities library
General utilities
Date and time
Function objects
Formatting library (C++20)
Relational operators (deprecated in C++20)
Integer comparison functions
Swap and type operations
Common vocabulary types
Elementary string conversions
T is not cv void
constexpr T& value() &;
(1) (since C++23)
constexpr const T& value() const&;
(2) (since C++23)
constexpr T&& value() &&;
(3) (since C++23)
constexpr const T&& value() const&&;
(4) (since C++23)
T is cv void
constexpr void value() const&;
(5) (since C++23)
constexpr void value() &&;
(6) (since C++23)

If *this contains an expected value, returns a reference to the contained value.

Otherwise, throws a std::bad_expected_access exception that contains a copy of the unexpected value contained in *this.


[edit] Parameters


[edit] Return value

1-4) A reference to the expected value contained in *this.
5-6) (none)

[edit] Exceptions

1-2,5) Throws std::bad_expected_access(error()) if *this contain an unexpected value.
3-4,6) Throws std::bad_expected_access(std::move(error())) if *this contain an unexpected value.

[edit] Example

[edit] See also

returns the expected value if present, another value otherwise
(public member function) [edit]
accesses the expected value
(public member function) [edit]
returns the unexpected value
(public member function) [edit]
exception indicating checked access to an expected that contains an unexpected value
(class template) [edit]