[#BloombergLP-bslma-ManagedPtr_Members-2constructor-00]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bslma.adoc[bslma]::xref:BloombergLP/bslma/ManagedPtr_Members.adoc[ManagedPtr&lowbar;Members]::ManagedPtr&lowbar;Members
:relfileprefix: ../../../
:mrdocs:

Constructors

== Synopses

Declared in `&lt;bslma&lowbar;managedptr&lowbar;members&period;h&gt;`

Create a `ManagedPtr&lowbar;Members` object in an unset state, i&period;e&period;, where `pointer` is null and `deleter` has an unspecified value&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:BloombergLP/bslma/ManagedPtr_Members/2constructor-03.adoc[ManagedPtr&lowbar;Members]();
----

[.small]#xref:BloombergLP/bslma/ManagedPtr_Members/2constructor-03.adoc[_» more&period;&period;&period;_]#

Create a `ManagedPtr&lowbar;Members` by taking ownership from `other`&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
explicit
xref:BloombergLP/bslma/ManagedPtr_Members/2constructor-06.adoc[ManagedPtr&lowbar;Members](xref:BloombergLP/bslma/ManagedPtr_Members.adoc[ManagedPtr&lowbar;Members]& other);
----

[.small]#xref:BloombergLP/bslma/ManagedPtr_Members/2constructor-06.adoc[_» more&period;&period;&period;_]#

Create a `ManagedPtr&lowbar;Members` managing the specified object&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:BloombergLP/bslma/ManagedPtr_Members/2constructor-0c.adoc[ManagedPtr&lowbar;Members](
    void* object,
    void* factory,
    xref:BloombergLP/bslma/ManagedPtr_Members.adoc[DeleterFunc] deleter);
----

[.small]#xref:BloombergLP/bslma/ManagedPtr_Members/2constructor-0c.adoc[_» more&period;&period;&period;_]#

Create a `ManagedPtr&lowbar;Members` managing an object under an alias&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:BloombergLP/bslma/ManagedPtr_Members/2constructor-0d.adoc[ManagedPtr&lowbar;Members](
    void* object,
    void* factory,
    xref:BloombergLP/bslma/ManagedPtr_Members.adoc[DeleterFunc] deleter,
    void* alias);
----

[.small]#xref:BloombergLP/bslma/ManagedPtr_Members/2constructor-0d.adoc[_» more&period;&period;&period;_]#

== Parameters

[cols="1,4"]
|===
| Name| Description
| *other*
| object from which to take ownership
| *object*
| address of the object to manage, or 0
| *factory*
| address of the factory used by `deleter`
| *deleter*
| function used to destroy the managed object
| *alias*
| address exposed as the managed pointer value
|===


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