[#beman-optional-optional-03-2constructor-04a]
= xref:beman.adoc[beman]::xref:beman/optional.adoc[optional]::xref:beman/optional/optional-03.adoc[optional]::optional
:relfileprefix: ../../../
:mrdocs:

Constructs the value from `rhs` if it has one&period;

== Synopsis

Declared in `&lt;beman&sol;optional&sol;optional&period;hpp&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;class U&gt;
constexpr
explicit(!std&colon;&colon;is&lowbar;convertible&lowbar;v&lt;U, T&gt;)
optional(xref:beman/optional/optional-03.adoc[optional&lt;U&gt;] const& rhs)
requires (detail&colon;&colon;enable&lowbar;from&lowbar;other&lt;T, U, const U&amp;&gt;);
----

== Description

Converting copy constructor&period;

== Template Parameters

[cols=2]
|===
| Name
| Description
| *U*
| 
|===

== Parameters

[cols=2]
|===
| Name
| Description
| *rhs*
| The object to copy construct from
|===


[.small]#Created with https://www.mrdocs.com[MrDocs]#
