Namespaces
Variants

std::experimental::simd_abi:: fixed_size

From cppreference.net
Definiert im Header <experimental/simd>
template < int N >
struct fixed_size { } ;
(Parallelism TS v2)

Der simd_abi :: fixed_size < N > Tag-Typ stellt sicher, dass datenparallele Typen N Elemente speichern und manipulieren können (d.h. simd < T, simd_abi :: fixed_size < N >> :: size ( ) gibt N zurück). Eine Implementierung muss mindestens alle N [ 1 , 32 ] unterstützen. Zusätzlich muss für jedes unterstützte simd < T, Abi > , wobei Abi ein implementierungsdefinierter ABI-Tag ist, N = simd < T, Abi > :: size ( ) unterstützt werden.

Hinweise

Eine Implementierung kann sich dafür entscheiden, auf ABI-Kompatibilität zwischen unterschiedlich kompilierten Übersetzungseinheiten für simd und simd_mask Instanziierungen zu verzichten, die dasselbe simd_abi :: fixed_size < N > Tag verwenden. Andernfalls ist die Effizienz von simd < T, Abi > wahrscheinlich besser als die von simd < T, fixed_size < simd_size_v < T, Abi >>> (wenn Abi keine Instanz von simd_abi :: fixed_size ist).

Beispiel

Siehe auch

(parallelism TS v2)
die maximale Anzahl an Elementen, die garantiert von fixed unterstützt werden
(Konstante)
(parallelism TS v2)
Tag-Typ zur Speicherung eines einzelnen Elements
(Typedef)
(parallelism TS v2)
Tag-Typ, der ABI-Kompatibilität sicherstellt
(Alias-Template)
(parallelism TS v2)
Tag-Typ, der am effizientesten ist
(Alias-Template)
(parallelism TS v2)
ermittelt einen ABI-Typ für einen gegebenen Elementtyp und eine Anzahl von Elementen
(Klassen-Template)