[#bsl-unordered_set-05]
= xref:bsl.adoc[bsl]::xref:bsl/unordered_set-0d2d.adoc[unordered&lowbar;set&lt;KEY&gt;]
:relfileprefix: ../
:mrdocs:

Deduce the template parameter `KEY` from the `value&lowbar;type` of the iterators supplied to the constructor of `unordered&lowbar;set`&period; This deduction guide does not participate unless the supplied allocator is convertible to `bsl&colon;&colon;allocator&lt;KEY&gt;`&period;

== Synopsis

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

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;
    class INPUT&lowbar;ITERATOR,
    class KEY = xref:BloombergLP/bslstl/IteratorUtil/IterVal_t.adoc[BloombergLP::bslstl::IteratorUtil::IterVal&lowbar;t&lt;INPUT&lowbar;ITERATOR&gt;],
    class ALLOC,
    class DEFAULT&lowbar;ALLOCATOR = xref:bsl/allocator-0df.adoc[bsl::allocator&lt;KEY&gt;]&gt;
requires bsl&colon;&colon;is&lowbar;convertible&lowbar;v&lt;ALLOC &ast;, DEFAULT&lowbar;ALLOCATOR&gt;
xref:bsl/unordered_set-0d2d.adoc[unordered&lowbar;set&lt;KEY&gt;](
    INPUT&lowbar;ITERATOR,
    INPUT&lowbar;ITERATOR,
    bsl::allocator&lowbar;traits&lt;DEFAULT&lowbar;ALLOCATOR&gt;::size&lowbar;type,
    ALLOC*) -> xref:bsl/unordered_set-0d2d.adoc[unordered&lowbar;set&lt;KEY&gt;];
----


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