FreeBSD Manual Pages
std::optional::value(3) C++ Standard Libary std::optional::value(3) NAME std::optional::value - std::optional::value Synopsis constexpr T& value() &; (1) (since C++17) constexpr const T& value() const &; constexpr T&& value() &&; (2) (since C++17) constexpr const T&& value() const &&; If *this contains a value, returns a reference to the contained value. Otherwise, throws a std::bad_optional_access exception. Parameters (none) Return value A reference to the contained value. Exceptions std::bad_optional_access if *this does not contain a value. Notes The dereference operator operator*() does not check if this optional contains a value, which may be more efficient than value(). Example // Run this code #include <optional> #include <iostream> int main() { std::optional<int> opt = {}; try { [[maybe_unused]] int n = opt.value(); } catch(const std::bad_optional_access& e) { std::cout << e.what() << '\n'; } try { opt.value() = 42; } catch(const std::bad_optional_access& e) { std::cout << e.what() << '\n'; } opt = 43; std::cout << *opt << '\n'; opt.value() = 44; std::cout << opt.value() << '\n'; } Output: bad optional access bad optional access 43 44 See also returns the contained value if available, an- other value value_or otherwise (public member function) operator-> accesses the contained value operator* (public member function) bad_optional_access exception indicating checked access to an op- tional that doesn't (C++17) contain a value (class) http://cppreference.com 2022.07.31 std::optional::value(3)
NAME | Synopsis | Parameters | Return value | Exceptions | Notes | Example | Output: | See also
Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=std::optional::value&sektion=3&manpath=FreeBSD+Ports+15.0>
