Vector<T> Vector<T> Vector<T> Vector<T> Struct

Определение

Представляет один вектор указанного числового типа, который подходит для низкоуровневой оптимизации параллельных алгоритмов.Represents a single vector of a specified numeric type that is suitable for low-level optimization of parallel algorithms.

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

Параметры типа

T

Тип вектора.The vector type. T может быть любого примитивного числового типа.T can be any primitive numeric type.

Наследование
Реализации

Комментарии

Vector<T> Представляет неизменяемую структуру, представляет один вектор указанного числового типа.Vector<T> is an immutable structure that represents a single vector of a specified numeric type. Число Vector<T> экземпляр фиксирован, но его верхний предел составляет регистра ЦП зависимых.The count of a Vector<T> instance is fixed, but its upper limit is CPU-register dependent. Он предназначен для использования в качестве стандартных блоков для векторизацию больших алгоритмов.It is intended to be used as a building block for vectorizing large algorithms.

Vector<T> Структура поддерживает аппаратное ускорение.The Vector<T> structure provides support for hardware acceleration.

В следующей таблице показаны какой тип-примитив числовые данные и сочетание операция использует встроенных инструкций для ускорения выполнения:The following table shows which primitive numeric data type and operation combination uses intrinsic instructions for faster executions:

Тип-примитивPrimitive type + - * /
sbyte ДаYes ДаYes НетNo НетNo
byte ДаYes ДаYes НетNo НетNo
short ДаYes ДаYes ДаYes НетNo
ushort ДаYes ДаYes НетNo НетNo
int ДаYes ДаYes ДаYes НетNo
uint ДаYes ДаYes НетNo НетNo
long ДаYes ДаYes НетNo НетNo
ulong ДаYes ДаYes НетNo НетNo
float ДаYes ДаYes ДаYes ДаYes
double ДаYes ДаYes ДаYes ДаYes

Конструкторы

Vector<T>(ReadOnlySpan<Byte>) Vector<T>(ReadOnlySpan<Byte>) Vector<T>(ReadOnlySpan<Byte>) Vector<T>(ReadOnlySpan<Byte>)
Vector<T>(ReadOnlySpan<T>) Vector<T>(ReadOnlySpan<T>) Vector<T>(ReadOnlySpan<T>) Vector<T>(ReadOnlySpan<T>)
Vector<T>(Span<T>) Vector<T>(Span<T>) Vector<T>(Span<T>) Vector<T>(Span<T>)
Vector<T>(T) Vector<T>(T) Vector<T>(T) Vector<T>(T)

Создает вектор с координатами заданного типа.Creates a vector whose components are of a specified type.

Vector<T>(T[]) Vector<T>(T[]) Vector<T>(T[]) Vector<T>(T[])

Создает вектор на основе заданного массива.Creates a vector from a specified array.

Vector<T>(T[], Int32) Vector<T>(T[], Int32) Vector<T>(T[], Int32) Vector<T>(T[], Int32)

Создает вектор на основе заданного массива, начиная с указанной позиции индекса.Creates a vector from a specified array starting at a specified index position.

Свойства

Count Count Count Count

Возвращает количество элементов, хранимых в векторе.Returns the number of elements stored in the vector.

Item[Int32] Item[Int32] Item[Int32] Item[Int32]

Получает элемент по указанному индексу.Gets the element at a specified index.

One One One One

Возвращает вектор, содержащий все единицы.Returns a vector containing all ones.

Zero Zero Zero Zero

Возвращает вектор, содержащий все нули.Returns a vector containing all zeroes.

Методы

CopyTo(Span<Byte>) CopyTo(Span<Byte>) CopyTo(Span<Byte>) CopyTo(Span<Byte>)
CopyTo(Span<T>) CopyTo(Span<T>) CopyTo(Span<T>) CopyTo(Span<T>)
CopyTo(T[]) CopyTo(T[]) CopyTo(T[]) CopyTo(T[])

Копирует экземпляр вектора в заданный массив назначения.Copies the vector instance to a specified destination array.

CopyTo(T[], Int32) CopyTo(T[], Int32) CopyTo(T[], Int32) CopyTo(T[], Int32)

Копирует экземпляр вектора в заданный массив назначения, начиная с указанной позиции индекса.Copies the vector instance to a specified destination array starting at a specified index position.

Equals(Vector<T>) Equals(Vector<T>) Equals(Vector<T>) Equals(Vector<T>)

Возвращает значение, показывающее, равен ли данный экземпляр указанному вектору.Returns a value that indicates whether this instance is equal to a specified vector.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Возвращает значение, указывающее, равен ли этот экземпляр указанному объекту.Returns a value that indicates whether this instance is equal to a specified object.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Возвращает хэш-код данного экземпляра.Returns the hash code for this instance.

ToString() ToString() ToString() ToString()

Возвращает строковое представление данного вектора, используя форматирование по умолчанию.Returns the string representation of this vector using default formatting.

ToString(String) ToString(String) ToString(String) ToString(String)

Возвращает строковое представление данного вектора, используя заданную строку форматирования для форматирования отдельных элементов.Returns the string representation of this vector using the specified format string to format individual elements.

ToString(String, IFormatProvider) ToString(String, IFormatProvider) ToString(String, IFormatProvider) ToString(String, IFormatProvider)

Возвращает строковое представление данного вектора, используя заданную строку форматирования для форматирования отдельных элементов и заданный поставщик формата для указания форматирования, определяемого языком и региональными параметрами.Returns the string representation of this vector using the specified format string to format individual elements and the specified format provider to define culture-specific formatting.

TryCopyTo(Span<Byte>) TryCopyTo(Span<Byte>) TryCopyTo(Span<Byte>) TryCopyTo(Span<Byte>)
TryCopyTo(Span<T>) TryCopyTo(Span<T>) TryCopyTo(Span<T>) TryCopyTo(Span<T>)

Операторы

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

Складывает два вектора.Adds two vectors together.

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

Возвращает новый вектор, выполняя битовую операцию And для всех элементов в двух векторах.Returns a new vector by performing a bitwise And operation on each of the elements in two vectors.

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

Возвращает новый вектор, выполняя битовую операцию Or для всех элементов в двух векторах.Returns a new vector by performing a bitwise Or operation on each of the elements in two vectors.

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

Делит первый вектор на второй.Divides the first vector by the second.

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

Возвращает значение, указывающее, равны ли все пары элементов в двух заданных векторах.Returns a value that indicates whether each pair of elements in two specified vectors are equal.

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

Возвращает новый вектор, выполняя битовую операцию XOr для всех элементов в двух векторах.Returns a new vector by performing a bitwise XOr operation on each of the elements in two vectors.

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

Повторно интерпретирует биты заданного вектора в вектор типа UInt64.Reinterprets the bits of the specified vector into a vector of type UInt64.

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

Повторно интерпретирует биты заданного вектора в вектор типа UInt32.Reinterprets the bits of the specified vector into a vector of type UInt32.

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

Повторно интерпретирует биты заданного вектора в вектор типа UInt16.Reinterprets the bits of the specified vector into a vector of type UInt16.

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

Повторно интерпретирует биты заданного вектора в вектор типа Single.Reinterprets the bits of the specified vector into a vector of type Single.

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

Повторно интерпретирует биты заданного вектора в вектор типа SByte.Reinterprets the bits of the specified vector into a vector of type SByte.

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

Повторно интерпретирует биты заданного вектора в вектор типа Byte.Reinterprets the bits of the specified vector into a vector of type Byte.

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

Повторно интерпретирует биты заданного вектора в вектор типа Int32.Reinterprets the bits of the specified vector into a vector of type Int32.

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

Повторно интерпретирует биты заданного вектора в вектор типа Int16.Reinterprets the bits of the specified vector into a vector of type Int16.

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

Повторно интерпретирует биты заданного вектора в вектор типа Double.Reinterprets the bits of the specified vector into a vector of type Double.

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

Повторно интерпретирует биты заданного вектора в вектор типа Int64.Reinterprets the bits of the specified vector into a vector of type Int64.

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

Возвращает значение, указывающее, равна ли каждая отдельная пара элементов в двух заданных векторах.Returns a value that indicates whether any single pair of elements in the specified vectors is equal.

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

Возвращает новый вектор, значения которого являются произведением каждой пары элементов в двух заданных векторах.Returns a new vector whose values are the product of each pair of elements in two specified vectors.

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

Умножает вектор на заданное скалярное значение.Multiplies a vector by a specified scalar value.

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

Умножает вектор на заданное скалярное значение.Multiplies a vector by a specified scalar value.

OnesComplement(Vector<T>) OnesComplement(Vector<T>) OnesComplement(Vector<T>) OnesComplement(Vector<T>)

Возвращает новый вектор, элементы которого получаются путем принятия дополнения до единицы элементов заданного вектора.Returns a new vector whose elements are obtained by taking the one's complement of a specified vector's elements.

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

Вычитает второй вектор из первого.Subtracts the second vector from the first.

UnaryNegation(Vector<T>) UnaryNegation(Vector<T>) UnaryNegation(Vector<T>) UnaryNegation(Vector<T>)

Преобразует данный вектор в отрицательный.Negates a given vector.

Применяется к