[#BloombergLP-bslstl-SharedPtr_IsPointerCompatible]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bslstl.adoc[bslstl]::SharedPtr&lowbar;IsPointerCompatible
:relfileprefix: ../../
:mrdocs:

Forward declaration of component&hyphen;private type trait to indicate whether a pointer to a `SOURCE&lowbar;TYPE` is compatible with a pointer to `DEST&lowbar;TYPE`&period; &lsqb;util&period;smartptr&period;shared&rsqb;&sol;5 says&colon; &quot;for the purposes of &period;&period;&period;, a pointer type SOURCE&lowbar;TYPE&ast; is said to be compatible with a pointer type DEST&lowbar;TYPE&ast; when either SOURCE&lowbar;TYPE&ast; is convertible to DEST&lowbar;TYPE&ast; or SOURCE&lowbar;TYPE is U&lsqb;N&rsqb;and DEST&lowbar;TYPE is cv U&lsqb;&rsqb;&period;&quot;

== Synopsis

Declared in `&lt;bslstl&lowbar;sharedptr&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;
    class SOURCE&lowbar;TYPE,
    class DEST&lowbar;TYPE&gt;
struct SharedPtr&lowbar;IsPointerCompatible
    : &sol;&ast; implementation-defined &ast;&sol;::type
----

== Base Classes

[cols="1,4"]
|===
| Name| Description
| `&sol;&ast; implementation-defined &ast;&sol;::type`
| 
|===


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