[hive.syn]

# 23 Containers library [[containers]](./#containers)

## 23.3 Sequence containers [[sequences]](sequences#hive.syn)

### 23.3.8 Header <hive> synopsis [hive.syn]

[ð](#header:%3chive%3e)

#include <initializer_list> // see [[initializer.list.syn]](initializer.list.syn "17.11.2 Header <initializer_­list> synopsis")#include <compare> // see [[compare.syn]](compare.syn "17.12.1 Header <compare> synopsis")namespace std {struct [hive_limits](#lib:hive_limits "23.3.8 Header <hive> synopsis [hive.syn]") { size_t [min](#lib:hive_limits,min "23.3.8 Header <hive> synopsis [hive.syn]");
 size_t [max](#lib:hive_limits,max "23.3.8 Header <hive> synopsis [hive.syn]"); constexpr hive_limits(size_t minimum, size_t maximum) noexcept: min(minimum), max(maximum) {}}; // [[hive]](hive "23.3.9 Class template hive"), class template hivetemplate<class T, class Allocator = allocator<T>> class hive; template<class T, class Allocator>void swap(hive<T, Allocator>& x, hive<T, Allocator>& y)noexcept(noexcept(x.swap(y))); template<class T, class Allocator, class U = T>typename hive<T, Allocator>::size_type
 erase(hive<T, Allocator>& c, const U& value); template<class T, class Allocator, class Predicate>typename hive<T, Allocator>::size_type
 erase_if(hive<T, Allocator>& c, Predicate pred); namespace pmr {template<class T>using hive = std::hive<T, polymorphic_allocator<T>>; }}
