std::layout_stride:: mapping
|
Definiert im Header
<mdspan>
|
||
|
template
<
class
Extents
>
class layout_stride :: mapping ; |
(seit C++23) | |
Die Klassenvorlage
layout_stride::mapping
steuert, wie mehrdimensionale Indizes mit benutzerdefinierten Schritten auf einen eindimensionalen Wert abgebildet werden, der den Offset repräsentiert.
Jede Spezialisierung von
mapping
ist ein
LayoutMapping
und ein
TriviallyCopyable
Typ, der
regular
erfüllt.
Das Programm ist fehlerhaft, wenn die Größe des mehrdimensionalen Indexraums Extents ( ) nicht als Wert des Typs Extents :: index_type darstellbar ist, wenn Extents :: rank_dynamic ( ) gleich 0 ist.
Inhaltsverzeichnis |
Template-Parameter
| Extents | - |
gibt die Anzahl der Dimensionen, ihre Größen und an, welche zur Kompilierzeit bekannt sind. Muss eine Spezialisierung von
std::extents
sein.
|
Mitgliedertypen
| Mitgliedertyp | Definition |
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_stride |
Member-Konstanten
| Mitglied | Definition |
constexpr
rank_type
rank_
(privat)
[statisch]
|
extents_type
::
rank
(
)
( Nur zur Darstellung verwendete statische Mitgliedskonstante* ) |
Datenmitglieder
| Member | Definition |
extents_type
extents_
(privat)
|
das Extents-Objekt
( Nur-Darstellungs-Memberobjekt* ) |
std::
array
<
index_type, rank_
>
strides_
(privat)
|
das Array von Strides
( Nur-Darstellungs-Memberobjekt* ) |
Memberfunktionen
|
konstruiert eine neue Abbildung
(öffentliche Elementfunktion) |
|
|
operator=
(explizit voreingestellt)
|
weist eine Abbildung zu
(öffentliche Elementfunktion) |
Beobachter |
|
|
erhält das Extent-Objekt
(öffentliche Elementfunktion) |
|
|
erhält das Array von Strides
(öffentliche Elementfunktion) |
|
|
gibt die erforderliche Größe der Abbildung zurück
(öffentliche Elementfunktion) |
|
|
bildet einen multidimensionalen Index auf einen Offset-Wert ab
(öffentliche Elementfunktion) |
|
|
[static]
|
bestimmt, ob diese Abbildung eindeutig ist (jede Kombination von Indizes bildet auf ein anderes zugrundeliegendes Element ab)
(öffentliche statische Elementfunktion) |
|
bestimmt, ob diese Abbildung erschöpfend ist (jedes zugrundeliegende Element kann mit einer Kombination von Indizes erreicht werden)
(öffentliche Elementfunktion) |
|
|
[static]
|
bestimmt, ob diese Abbildung gestridet ist (in jeder Dimension überspringt das Inkrementieren eines Index jedes Mal die gleiche Anzahl zugrundeliegender Elemente)
(öffentliche statische Elementfunktion) |
|
[static]
|
bestimmt, ob diese Layout-Abbildung immer eindeutig ist
(öffentliche statische Elementfunktion) |
|
[static]
|
bestimmt, ob diese Layout-Abbildung immer erschöpfend ist
(öffentliche statische Elementfunktion) |
|
[static]
|
bestimmt, ob diese Layout-Abbildung immer gestridet ist
(öffentliche statische Elementfunktion) |
|
erhält den Stride entlang der angegebenen Dimension
(öffentliche Elementfunktion) |
|
Nicht-Member-Funktionen
vergleicht dieses Layout-Mapping von
layout_stride
mit anderem Mapping
(Funktions-Template) |
|
berechnet das Mapping und den Data-Handle-Offset für
subdmspan
(öffentliche Elementfunktion) |
Siehe auch
|
eine Layout-Zuordnung von
layout_left
(öffentliche Mitgliedsklassen-Template von
std::layout_left
)
|
|
|
eine Layout-Zuordnung von
layout_right
(öffentliche Mitgliedsklassen-Template von
std::layout_right
)
|