1

これらを提供する既存のexpected<T,E>クラスがあります:typedefsoperators

value_type = T
operator *(): expected<T,E>& -> value_type&
              const expected<T,E>& -> const value_type&
              expected<T,E>&& -> value_type&&
              const expected<T,E>&& -> const value_type&&

今、私はこのような関数を書いています:

template <typename E> 
/*type*/ Unwrap(E&& e)
{
    return e.has_value() ? /*what*/
        : throw e.error();
}

コメント欄には何を入れればいいですか?
を試してみましauto&&たが*e、 を受け取りましたが、excepted&&が返されましたvalue_type&
も試しましstd::forwardたが、コンパイルできませんでした。

どうすればいいですか?

4

1 に答える 1