---
name: "__gnu_pbds::basic_hash_table"
section: "3cxx"
platform: "linux"
package: "libstdc++-12-doc"
version: "12.4.0-5"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/__gnu_pbds::basic_hash_table/3cxx"
---

# \_\_gnu\_pbds::basic\_hash\_table(3cxx)

## NAME

\_\_gnu\_pbds::basic\_hash\_table\< Key, Mapped, Hash\_Fn, Eq\_Fn, Resize\_Policy, Store\_Hash, Tag, Policy\_Tl, \_Alloc \>

## SYNOPSIS

`#include <assoc_container.hpp>`

Inherits detail::container\_base\_dispatch::type.

Inherited by **\_\_gnu\_pbds::cc\_hash\_table\< Key, Mapped, Hash\_Fn, Eq\_Fn, Comb\_Hash\_Fn, Resize\_Policy, Store\_Hash, \_Alloc \>**, and **\_\_gnu\_pbds::gp\_hash\_table\< Key, Mapped, Hash\_Fn, Eq\_Fn, Comb\_Probe\_Fn, Probe\_Fn, Resize\_Policy, Store\_Hash, \_Alloc \>**.

### Protected Member Functions

**basic\_hash\_table** (const **basic\_hash\_table** &other)\
 template\<typename T0 \> **basic\_hash\_table** (T0 t0)\
 template\<typename T0 , typename T1 \> **basic\_hash\_table** (T0 t0, T1 t1)\
 template\<typename T0 , typename T1 , typename T2 \> **basic\_hash\_table** (T0 t0, T1 t1, T2 t2)\
 template\<typename T0 , typename T1 , typename T2 , typename T3 \> **basic\_hash\_table** (T0 t0, T1 t1, T2 t2, T3 t3)\
 template\<typename T0 , typename T1 , typename T2 , typename T3 , typename T4 \> **basic\_hash\_table** (T0 t0, T1 t1, T2 t2, T3 t3, T4 t4)\
 template\<typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 \> **basic\_hash\_table** (T0 t0, T1 t1, T2 t2, T3 t3, T4 t4, T5 t5)\
 template\<typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 \> **basic\_hash\_table** (T0 t0, T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6)\
 template\<typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 \> **basic\_hash\_table** (T0 t0, T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6, T7 t7)\
 template\<typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 \> **basic\_hash\_table** (T0 t0, T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6, T7 t7, T8 t8)\

## Detailed Description

### template\<typename Key, typename Mapped, typename Hash\_Fn, typename Eq\_Fn, typename Resize\_Policy, bool Store\_Hash, typename Tag, typename Policy\_Tl, typename \_Alloc\>

class \_\_gnu\_pbds::basic\_hash\_table\< Key, Mapped, Hash\_Fn, Eq\_Fn, Resize\_Policy, Store\_Hash, Tag, Policy\_Tl, \_Alloc \>"A hashed container abstraction.

**Template Parameters**

*Key* Key type. \
 *Mapped* Map type. \
 *Hash\_Fn* Hashing functor. \
 *Eq\_Fn* Equal functor. \
 *Resize\_Policy* Resizes hash. \
 *Store\_Hash* Indicates whether the hash value will be stored along with each key. \
 *Tag* Instantiating data structure type, see container\_tag. \
 *Policy\_TL* Policy typelist. \
 *\_Alloc* Allocator type.

Base is dispatched at compile time via Tag, from the following choices: cc\_hash\_tag, gp\_hash\_tag, and descendants of basic\_hash\_tag.

Base choices are: detail::cc\_ht\_map, detail::gp\_ht\_map

## Author

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