If uses_allocator_v<container_type, Alloc> is false
the constructors in this subclause shall not participate in overload resolution.

```
template<class Alloc> explicit priority_queue(const Alloc& a);
```

```
template<class Alloc> priority_queue(const Compare& compare, const Alloc& a);
```

```
template<class Alloc>
priority_queue(const Compare& compare, const Container& cont, const Alloc& a);
```

```
template<class Alloc>
priority_queue(const Compare& compare, Container&& cont, const Alloc& a);
```

```
template<class Alloc> priority_queue(const priority_queue& q, const Alloc& a);
```

```
template<class Alloc> priority_queue(priority_queue&& q, const Alloc& a);
```

```
template<class InputIterator, class Alloc>
priority_queue(InputIterator first, InputIterator last, const Alloc& a);
```

```
template<class InputIterator, class Alloc>
priority_queue(InputIterator first, InputIterator last, const Compare& compare, const Alloc& a);
```

```
template<class InputIterator, class Alloc>
priority_queue(InputIterator first, InputIterator last, const Compare& compare,
const Container& cont, const Alloc& a);
```

```
template<class InputIterator, class Alloc>
priority_queue(InputIterator first, InputIterator last, const Compare& compare, Container&& cont,
const Alloc& a);
```