[span.deduct]

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

## 23.7 Views [[views]](views#span.deduct)

### 23.7.2 Contiguous access [[views.contiguous]](views.contiguous#span.deduct)

#### 23.7.2.2 Class template span [[views.span]](views.span#span.deduct)

#### 23.7.2.2.3 Deduction guides [span.deduct]

[ð](#lib:span,deduction_guide)

`template<class It, class EndOrSize>
  span(It, EndOrSize) -> span<remove_reference_t<iter_reference_t<It>>,
                              [maybe-static-ext](span.syn#concept:maybe-static-ext "23.7.2.1 Header <span> synopsis [span.syn]")<EndOrSize>>;
`

[1](#1)

[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/containers.tex#L20615)

*Constraints*: It satisfies [contiguous_iterator](iterator.concept.contiguous#concept:contiguous_iterator "24.3.4.14 Concept contiguous_­iterator [iterator.concept.contiguous]")[.](#1.sentence-1)

[ð](#lib:span,deduction_guide_)

`template<class R>
  span(R&&) -> span<remove_reference_t<ranges::range_reference_t<R>>>;
`

[2](#2)

[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/containers.tex#L20627)

*Constraints*: R satisfies ranges​::​[contiguous_range](range.refinements#concept:contiguous_range "25.4.6 Other range refinements [range.refinements]")[.](#2.sentence-1)
