[mdspan.layout.policy.overview]

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

## 23.7 Views [[views]](views#mdspan.layout.policy.overview)

### 23.7.3 Multidimensional access [[views.multidim]](views.multidim#mdspan.layout.policy.overview)

#### 23.7.3.4 Layout mapping [[mdspan.layout]](mdspan.layout#policy.overview)

#### 23.7.3.4.4 Layout mapping policies [mdspan.layout.policy.overview]

namespace std {struct layout_left {template<class Extents>class mapping; }; struct layout_right {template<class Extents>class mapping; }; struct layout_stride {template<class Extents>class mapping; }; template<size_t PaddingValue>struct layout_left_padded {template<class Extents> class mapping; }; template<size_t PaddingValue>struct layout_right_padded {template<class Extents> class mapping; };}

[1](#1)

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

Each of layout_left, layout_right, and layout_stride,
as well as each specialization oflayout_left_padded and layout_right_padded,
meets the layout mapping policy requirements and is a trivially copyable type[.](#1.sentence-1)

Furthermore,is_trivially_default_constructible_v<T> is true for any such type T[.](#1.sentence-2)
