# std::experimental::make_exceptional_future

From cppreference.com
< cpp‎ | experimental

Defined in header `<experimental/future>` |  |
template< class T > future<T> make_exceptional_future( std::exception_ptr ex ); | (1) | (concurrency TS)
template< class T, class E > future<T> make_exceptional_future( E ex ); | (2) | (concurrency TS)

1) Creates a shared state of type `T` that is immediately ready and stores the exception pointer ex, then return a future associated with that shared state, as if by promise<T> p; p.set_exception(ex); return p.get_future();. The behavior is undefined if ex is null.
2) Creates a shared state of type `T` that is immediately ready and stores an exception pointer created from ex, then return a future associated with that shared state, as if by promise<T> p; p.set_exception(std::make_exception_ptr(ex)); return p.get_future();.

### Return value

A `future` object associated with the shared state that was created.

### See also

make_ready_future (concurrency TS) | produces a future that is ready immediately and holds the given value (function template)

Retrieved from "https://en.cppreference.com/mwiki/index.php?title=cpp/experimental/make_exceptional_future&oldid=154987"