Namensräume
Varianten
Aktionen

std::experimental::memory_alignment

Von cppreference.com
< cpp‎ | experimental‎ | simd
 
 
 
 
 
Definiert in Header <experimental/simd>
template< class T, class U = typename T::value_type >
struct memory_alignment;
(Parallelismus TS v2)

Wenn is_simd_mask_v<T> true ist und U bool ist, oder wenn is_simd_v<T> true ist und U ein vektorisierbarer Typ ist, wird die Member-Konstante value bereitgestellt, die gleich der minimalen Ausrichtung eines Zeigers ist, der an einen Ladekonstruktor, eine copy_from-Funktion oder eine copy_to-Funktion übergeben wird. Für alle anderen Typen T und U gibt es kein Member value.

Wenn das Programm Spezialisierungen für std::memory_alignment oder std::memory_alignment_v(seit C++17) hinzufügt, ist das Verhalten undefiniert.

Inhalt

[bearbeiten] Hilfsvariablen-Template

template< class T, class U = typename T::value_type >
constexpr std::size_t memory_alignment_v = memory_alignment<T, U>::value;
(Parallelismus TS v2)

Abgeleitet von std::integral_constant

Member-Konstanten

value
[static]
die minimale Ausrichtung eines Zeigers, der an einen Ladekonstruktor, eine copy_from-Funktion oder eine copy_to-Funktion übergeben wird
(öffentliche statische Member-Konstante)

Memberfunktionen

operator std::size_t
konvertiert das Objekt in std::size_t, gibt value zurück
(öffentliche Memberfunktion)
operator()
(C++14)
gibt value zurück
(öffentliche Memberfunktion)

Membertypen

Typ Definition
value_type std::size_t
type std::integral_constant<std::size_t, value>

[bearbeiten] Beispiel

[bearbeiten] Siehe auch

Flag, das die Ausrichtung der Lade-/Speicheradresse auf Vektor-Ausrichtung anzeigt
(Klasse) [edit]
(Parallelismus TS v2)
konstruiert ein simd-Objekt
(public member function of std::experimental::simd<T,Abi>) [bearbeiten]
(Parallelismus TS v2)
lädt simd-Elemente aus zusammenhängendem Speicher
(public member function of std::experimental::simd<T,Abi>) [bearbeiten]
(Parallelismus TS v2)
speichert simd-Elemente in zusammenhängendem Speicher
(public member function of std::experimental::simd<T,Abi>) [bearbeiten]
(Parallelismus TS v2)
konstruiert ein simd_mask-Objekt
(public member function of std::experimental::simd_mask<T,Abi>) [bearbeiten]
(Parallelismus TS v2)
lädt simd_mask-Elemente aus zusammenhängendem Speicher
(public member function of std::experimental::simd_mask<T,Abi>) [bearbeiten]
(Parallelismus TS v2)
speichert simd_mask-Elemente in zusammenhängendem Speicher
(public member function of std::experimental::simd_mask<T,Abi>) [bearbeiten]