deductionguidesforstd::optional(3)

NAME
deductionguidesforstd::optional - deductionguidesforstd::optional

Synopsis
   Defined in header <optional>
   template< class T > (since C++17)
   optional(T) -> optional<T>;
   One deduction guide is provided for std::optional to account for the edge cases
   missed by the implicit deduction guides, in particular, non-copyable arguments and
   array to pointer conversion.

Example
// Run this code
 #include <optional>
 #include <type_traits>
 int main()
 {
     int a[2];
     std::optional oa{a}; // uses explicit deduction guide
     static_assert(std::is_same_v<decltype(oa), std::optional<int*>> == true);
 }