Namespaces
Variants

std::layout_right:: mapping

From cppreference.net
헤더에 정의됨 <mdspan>
template < class Extents >
class layout_right :: mapping ;
(C++23부터)

클래스 템플릿 layout_right::mapping 은 다차원 인덱스가 행 우선 방식으로 오프셋을 나타내는 1차원 값에 어떻게 매핑되는지 제어합니다. 이 매핑은 가장 오른쪽 차원에서 스트라이드가 1이며, 스트라이드가 오른쪽에서 왼쪽으로 차원 크기의 곱으로 증가합니다.

mapping 의 모든 특수화는 LayoutMapping 이면서 TriviallyCopyable 타입이며, regular 개념을 만족합니다.

다차원 인덱스 공간의 크기 Extents ( ) Extents :: index_type 타입의 값으로 표현될 수 없을 때, 그리고 Extents :: rank_dynamic ( ) 0 일 경우, 프로그램은 형식이 잘못되었습니다.

목차

템플릿 매개변수

익스텐트(Extents) - 차원 수, 크기, 컴파일 타임에 알려진 차원을 지정합니다. std::extents 의 특수화(specialization)여야 합니다.

멤버 타입

멤버 이름 정의
extents_type Extents
index_type extents_type::index_type
size_type extents_type::size_type
rank_type extents_type::rank_type
layout_type std::layout_right

데이터 멤버

멤버 정의
extents_type extents_ (private) 익스텐트 객체
( 설명 전용 멤버 객체* )

멤버 함수

새로운 매핑을 생성함
(public member function)
operator=
(explicitly defaulted)
매핑을 할당함
(public member function)
Observers
extents 객체를 얻음
(public member function)
매핑에 필요한 크기를 반환함
(public member function)
다차원 인덱스를 오프셋 값으로 매핑함
(public member function)
[static]
이 매핑이 고유한지 결정함 (모든 인덱스 조합이 서로 다른 기본 요소에 매핑됨)
(public static member function)
이 매핑이 완전한지 결정함 (모든 기본 요소가 일부 인덱스 조합으로 접근 가능함)
(public static member function)
[static]
이 매핑이 스트라이드된지 결정함 (각 차원에서 인덱스를 증가시킬 때마다 항상 동일한 수의 기본 요소를 건너뜀)
(public static member function)
이 레이아웃 매핑이 항상 고유한지 결정함
(public static member function)
이 레이아웃 매핑이 항상 완전한지 결정함
(public static member function)
이 레이아웃 매핑이 항상 스트라이드된지 결정함
(public static member function)
지정된 차원을 따른 스트라이드를 얻음
(public member function)

비멤버 함수

layout_right 레이아웃 매핑을 다른 매핑과 비교합니다
(함수 템플릿)
subdmspan 에 사용되는 매핑과 데이터 핸들 오프셋을 계산합니다
(public member function)

예제

참고 항목

layout_left 의 레이아웃 매핑
( std::layout_left 의 public 멤버 클래스 템플릿)
layout_stride 의 레이아웃 매핑
( std::layout_stride 의 public 멤버 클래스 템플릿)