Partage via


Vector<T> Structure

Définition

Représente un vecteur unique d’un type numérique spécifié qui convient à l’optimisation de bas niveau des algorithmes parallèles.

generic <typename T>
 where T : value classpublic value class Vector : IEquatable<System::Numerics::Vector<T>>, IFormattable
generic <typename T>
public value class Vector : IEquatable<System::Numerics::Vector<T>>, IFormattable
public struct Vector<T> : IEquatable<System.Numerics.Vector<T>>, IFormattable where T : struct
public readonly struct Vector<T> : IEquatable<System.Numerics.Vector<T>>, IFormattable where T : struct
public readonly struct Vector<T> : IEquatable<System.Numerics.Vector<T>>, IFormattable
type Vector<'T (requires 'T : struct)> = struct
    interface IFormattable
type Vector<'T> = struct
    interface IFormattable
Public Structure Vector(Of T)
Implements IEquatable(Of Vector(Of T)), IFormattable

Paramètres de type

T

Type des éléments dans le vecteur. T peut être n’importe quel type numérique primitif.

Héritage
Vector<T>
Implémente

Remarques

Vector<T> est une structure immuable qui représente un vecteur unique d’un type numérique spécifié. Le nombre d’instances Vector<T> est fixe, mais sa limite supérieure est dépendante du registre du processeur. Il est destiné à être utilisé comme bloc de construction pour vectoriser de grands algorithmes, et ne peut donc pas être utilisé directement comme vecteur de longueur arbitraire ou tensorateur.

La structure Vector<T> prend en charge l’accélération matérielle.

Le terme type de données numérique primitif dans cet article fait référence aux types de données numériques qui sont directement pris en charge par l’UC et qui ont des instructions qui peuvent manipuler ces types de données.

Constructeurs

Vector<T>(ReadOnlySpan<Byte>)

Construit un vecteur à partir de l’étendue en lecture seule donnée d’octets.

Vector<T>(ReadOnlySpan<T>)

Construit un vecteur à partir du ReadOnlySpan<T>donné.

Vector<T>(Span<T>)

Construit un vecteur à partir du Span<T>donné.

Vector<T>(T)

Crée un vecteur dont les composants sont d’un type spécifié.

Vector<T>(T[])

Crée un vecteur à partir d’un tableau spécifié.

Vector<T>(T[], Int32)

Crée un vecteur à partir d’un tableau spécifié à partir d’une position d’index spécifiée.

Propriétés

AllBitsSet

Obtient une nouvelle Vector<T> avec tous les bits définis sur 1.

Count

Retourne le nombre d’éléments stockés dans le vecteur.

Indices

Obtient une nouvelle Vector<T> avec les éléments définis sur leur index.

IsSupported

Obtient une valeur qui indique si T est prise en charge.

Item[Int32]

Obtient l’élément à un index spécifié.

One

Retourne un vecteur contenant tous ceux-ci.

Zero

Retourne un vecteur contenant tous les zéros.

Méthodes

CopyTo(Span<Byte>)

Copie le vecteur dans la Span<T>donnée.

CopyTo(Span<T>)

Copie le vecteur dans l’étendue donnée. .

CopyTo(T[])

Copie l’instance vectorielle dans un tableau de destination spécifié.

CopyTo(T[], Int32)

Copie l’instance vectorielle dans un tableau de destination spécifié à partir d’une position d’index spécifiée.

Equals(Object)

Retourne une valeur qui indique si cette instance est égale à un objet spécifié.

Equals(Vector<T>)

Retourne une valeur qui indique si cette instance est égale à un vecteur spécifié.

GetHashCode()

Retourne le code de hachage pour cette instance.

ToString()

Retourne la représentation sous forme de chaîne de ce vecteur à l’aide de la mise en forme par défaut.

ToString(String)

Retourne la représentation sous forme de chaîne de ce vecteur à l’aide de la chaîne de format spécifiée pour mettre en forme des éléments individuels.

ToString(String, IFormatProvider)

Retourne la représentation sous forme de chaîne de ce vecteur à l’aide de la chaîne de format spécifiée pour mettre en forme des éléments individuels et le fournisseur de format spécifié pour définir une mise en forme spécifique à la culture.

TryCopyTo(Span<Byte>)

Tente de copier le vecteur dans l’étendue d’octet donnée.

TryCopyTo(Span<T>)

Tente de copier le vecteur dans le Span<T>donné.

Opérateurs

Addition(Vector<T>, Vector<T>)

Ajoute deux vecteurs ensemble.

BitwiseAnd(Vector<T>, Vector<T>)

Retourne un nouveau vecteur en effectuant une opération de And au niveau du bit sur chacun des éléments de deux vecteurs.

BitwiseOr(Vector<T>, Vector<T>)

Retourne un nouveau vecteur en effectuant une opération de Or au niveau du bit sur chacun des éléments de deux vecteurs.

Division(Vector<T>, T)

Divise un vecteur par un scalaire pour calculer le quotient par élément.

Division(Vector<T>, Vector<T>)

Divise le premier vecteur par la seconde.

Equality(Vector<T>, Vector<T>)

Retourne une valeur qui indique si chaque paire d’éléments dans deux vecteurs spécifiés est égale.

ExclusiveOr(Vector<T>, Vector<T>)

Retourne un nouveau vecteur en effectuant une opération de XOr au niveau du bit sur chacun des éléments de deux vecteurs.

Explicit(Vector<T> to Vector<Byte>)

Réinterprète les bits du vecteur spécifié dans un vecteur de type Byte.

Explicit(Vector<T> to Vector<Double>)

Réinterprète les bits du vecteur spécifié dans un vecteur de type Double.

Explicit(Vector<T> to Vector<Int16>)

Réinterprète les bits du vecteur spécifié dans un vecteur de type Int16.

Explicit(Vector<T> to Vector<Int32>)

Réinterprète les bits du vecteur spécifié dans un vecteur de type Int32.

Explicit(Vector<T> to Vector<Int64>)

Réinterprète les bits du vecteur spécifié dans un vecteur de type Int64.

Explicit(Vector<T> to Vector<IntPtr>)

Réinterpret les bits d’un vecteur source dans un vecteur d’entiers de taille native.

Explicit(Vector<T> to Vector<SByte>)

Réinterprète les bits du vecteur spécifié dans un vecteur de type SByte.

Explicit(Vector<T> to Vector<Single>)

Réinterprète les bits du vecteur spécifié dans un vecteur de type Single.

Explicit(Vector<T> to Vector<UInt16>)

Réinterprète les bits du vecteur spécifié dans un vecteur de type UInt16.

Explicit(Vector<T> to Vector<UInt32>)

Réinterprète les bits du vecteur spécifié dans un vecteur de type UInt32.

Explicit(Vector<T> to Vector<UInt64>)

Réinterprète les bits du vecteur spécifié dans un vecteur de type UInt64.

Explicit(Vector<T> to Vector<UIntPtr>)

Réinterprète les bits d’un vecteur source dans un vecteur d’entiers non signés de taille native.

Inequality(Vector<T>, Vector<T>)

Retourne une valeur qui indique si une paire unique d’éléments dans les vecteurs spécifiés est égale.

LeftShift(Vector<T>, Int32)

Déplace chaque élément d’un vecteur à gauche par la quantité spécifiée.

Multiply(T, Vector<T>)

Multiplie un vecteur par une valeur scalaire spécifiée.

Multiply(Vector<T>, T)

Multiplie un vecteur par une valeur scalaire spécifiée.

Multiply(Vector<T>, Vector<T>)

Retourne un nouveau vecteur dont les valeurs sont le produit de chaque paire d’éléments dans deux vecteurs spécifiés.

OnesComplement(Vector<T>)

Retourne un nouveau vecteur dont les éléments sont obtenus en prenant le complément d’un vecteur spécifié.

RightShift(Vector<T>, Int32)

Shifts (signé) chaque élément d’un vecteur à droite par la quantité spécifiée.

Subtraction(Vector<T>, Vector<T>)

Soustrait le deuxième vecteur du premier.

UnaryNegation(Vector<T>)

Annule un vecteur donné.

UnaryPlus(Vector<T>)

Retourne un vecteur donné inchangé.

UnsignedRightShift(Vector<T>, Int32)

Shifts (unsigned) chaque élément d’un vecteur droit par la quantité spécifiée.

Méthodes d’extension

As<TFrom,TTo>(Vector<TFrom>)

Réinterpret une Vector<T> en tant que nouvelle Vector<T>.

GetElement<T>(Vector<T>, Int32)

Obtient l’élément à l’index spécifié.

Store<T>(Vector<T>, T*)

Stocke un vecteur à la destination donnée.

StoreAligned<T>(Vector<T>, T*)

Stocke un vecteur à la destination alignée donnée.

StoreAlignedNonTemporal<T>(Vector<T>, T*)

Stocke un vecteur à la destination alignée donnée.

StoreUnsafe<T>(Vector<T>, T)

Stocke un vecteur à la destination donnée.

StoreUnsafe<T>(Vector<T>, T, UIntPtr)

Stocke un vecteur à la destination donnée.

ToScalar<T>(Vector<T>)

Convertit le vecteur donné en scalaire contenant la valeur du premier élément.

WithElement<T>(Vector<T>, Int32, T)

Crée une nouvelle Vector<T> avec l’élément au niveau de l’index spécifié défini sur la valeur spécifiée et les éléments restants définis sur la même valeur que dans le vecteur donné.

AsVector128<T>(Vector<T>)

Réinterpret une Vector<T> en tant que nouvelle Vector128<T>.

AsVector256<T>(Vector<T>)

Réinterpret une Vector<T> en tant que nouvelle Vector256<T>.

AsVector512<T>(Vector<T>)

Réinterpret une Vector<T> en tant que nouvelle Vector512<T>.

S’applique à