---
name: "std::__profile::unordered_set"
section: "3cxx"
platform: "linux"
package: "libstdc++-9-doc"
version: "9.3.0-22"
release: "Debian 11 (Bullseye)"
platforms: ["linux"]
url: "https://new.carta.tech/std::__profile::unordered_set"
---

# std::\_\_profile::unordered\_set(3cxx)

Unordered\_set wrapper with performance instrumentation.

## NAME

std::\_\_profile::unordered\_set\< \_Key, \_Hash, \_Pred, \_Alloc \> - Unordered\_set wrapper with performance instrumentation.

## SYNOPSIS

Inherits unordered\_set\< \_Key, std::hash\< \_Key \>, std::equal\_to\< \_Key \>, std::allocator\< \_Key \> \>, and std::\_\_profile::\_Unordered\_profile\< \_UnorderedCont, \_Unique\_keys \>.

### Public Types

typedef \_Base::allocator\_type **allocator\_type**\
 typedef \_Base::const\_iterator **const\_iterator**\
 typedef \_Base::const\_reference **const\_reference**\
 typedef \_Base::difference\_type **difference\_type**\
 typedef \_Base::hasher **hasher**\
 typedef \_Base::iterator **iterator**\
 typedef \_Base::key\_equal **key\_equal**\
 typedef \_Base::key\_type **key\_type**\
 typedef \_Base::reference **reference**\
 typedef \_Base::size\_type **size\_type**\
 typedef \_Base::value\_type **value\_type**\

### Public Member Functions

template\<typename \_InputIterator \> **unordered\_set** (\_InputIterator \_\_f, \_InputIterator \_\_l, size\_type \_\_n=0, const hasher &\_\_hf=hasher(), const key\_equal &\_\_eql=key\_equal(), const allocator\_type &\_\_a=allocator\_type())\
 template\<typename \_InputIterator \> **unordered\_set** (\_InputIterator \_\_first, \_InputIterator \_\_last, size\_type \_\_n, const allocator\_type &\_\_a)\
 template\<typename \_InputIterator \> **unordered\_set** (\_InputIterator \_\_first, \_InputIterator \_\_last, size\_type \_\_n, const hasher &\_\_hf, const allocator\_type &\_\_a)\
 **unordered\_set** (const **\_Base** &\_\_x)\
 **unordered\_set** (const allocator\_type &\_\_a)\
 **unordered\_set** (const **unordered\_set** &)=default\
 **unordered\_set** (const **unordered\_set** &\_\_uset, const allocator\_type &\_\_a)\
 **unordered\_set** (**initializer\_list**\< value\_type \> \_\_l, size\_type \_\_n, const allocator\_type &\_\_a)\
 **unordered\_set** (**initializer\_list**\< value\_type \> \_\_l, size\_type \_\_n, const hasher &\_\_hf, const allocator\_type &\_\_a)\
 **unordered\_set** (**initializer\_list**\< value\_type \> \_\_l, size\_type \_\_n=0, const hasher &\_\_hf=hasher(), const key\_equal &\_\_eql=key\_equal(), const allocator\_type &\_\_a=allocator\_type())\
 **unordered\_set** (size\_type \_\_n, const allocator\_type &\_\_a)\
 **unordered\_set** (size\_type \_\_n, const hasher &\_\_hf, const allocator\_type &\_\_a)\
 **unordered\_set** (size\_type \_\_n, const hasher &\_\_hf=hasher(), const key\_equal &\_\_eql=key\_equal(), const allocator\_type &\_\_a=allocator\_type())\
 **unordered\_set** (**unordered\_set** &&)=default\
 **unordered\_set** (**unordered\_set** &&\_\_uset, const allocator\_type &\_\_a)\
 void **clear** () noexcept\
 template\<typename... \_Args\> **std::pair**\< iterator, bool \> **emplace** (\_Args &&... \_\_args)\
 template\<typename... \_Args\> iterator **emplace\_hint** (const\_iterator \_\_it, \_Args &&... \_\_args)\
 template\<typename \_InputIter \> void **insert** (\_InputIter \_\_first, \_InputIter \_\_last)\
 **std::pair**\< iterator, bool \> **insert** (const value\_type &\_\_obj)\
 iterator **insert** (const\_iterator \_\_iter, const value\_type &\_\_v)\
 iterator **insert** (const\_iterator \_\_iter, value\_type &&\_\_v)\
 void **insert** (**std::initializer\_list**\< value\_type \> \_\_l)\
 **std::pair**\< iterator, bool \> **insert** (value\_type &&\_\_obj)\
 **unordered\_set** & **operator=** (const **unordered\_set** &)=default\
 **unordered\_set** & **operator=** (**initializer\_list**\< value\_type \> \_\_l)\
 **unordered\_set** & **operator=** (**unordered\_set** &&)=default\
 void **rehash** (size\_type \_\_n)\
 void **swap** (**unordered\_set** &\_\_x) noexcept(noexcept(\_\_x.\_M\_base().swap(\_\_x)))\

### Protected Member Functions

void **\_M\_profile\_construct** () noexcept\
 void **\_M\_profile\_destruct** () noexcept\
 void **\_M\_profile\_resize** (std::size\_t \_\_old\_size)\
 void **\_M\_swap** (\_Unordered\_profile &\_\_other) noexcept\

### Protected Attributes

**\_\_gnu\_profile::\_\_hashfunc\_info** \* **\_M\_hashfunc\_info**\
 **\_\_gnu\_profile::\_\_container\_size\_info** \* **\_M\_size\_info**\

## Detailed Description

### template\<typename \_Key, typename \_Hash = std::hash\<\_Key\>, typename \_Pred = std::equal\_to\<\_Key\>, typename \_Alloc = std::allocator\<\_Key\>\>

class std::\_\_profile::unordered\_set\< \_Key, \_Hash, \_Pred, \_Alloc \>" Unordered\_set wrapper with performance instrumentation.

Definition at line 51 of file profile/unordered\_set.

## Author

Generated automatically by Doxygen for libstdc++ from the source code.
