Vector<T> Estrutura
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Representa um único vetor de um tipo numérico especificado adequado para otimização de baixo nível de algoritmos paralelos.
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
public readonly struct Vector<T> : IEquatable<System.Numerics.Vector<T>>, IFormattable where T : struct
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
Parâmetros de tipo
- T
O tipo dos elementos no vetor.
T pode ser qualquer tipo numérico primitivo.
- Herança
- Implementações
Comentários
Vector<T> é uma estrutura imutável que representa um único vetor de um tipo numérico especificado. A contagem de Vector<T> instâncias é fixa, mas seu limite superior depende do registro de CPU. Ele deve ser usado como um bloco de construção para vetorizar algoritmos grandes e, portanto, não pode ser usado diretamente como um vetor de comprimento arbitrário ou tensor.
A Vector<T> estrutura fornece suporte para aceleração de hardware.
O termo tipo de dados numéricos primitivos neste artigo refere-se a tipos de dados numéricos que têm suporte direto da CPU e têm instruções que podem manipular esses tipos de dados.
Construtores
| Nome | Description |
|---|---|
| Vector<T>(ReadOnlySpan<Byte>) |
Constrói um vetor a partir do intervalo de bytes somente leitura especificado. |
| Vector<T>(ReadOnlySpan<T>) |
Constrói um vetor do determinado ReadOnlySpan<T>. |
| Vector<T>(Span<T>) |
Constrói um vetor do determinado Span<T>. |
| Vector<T>(T) |
Cria um vetor cujos componentes são de um tipo especificado. |
| Vector<T>(T[], Int32) |
Cria um vetor de uma matriz especificada começando em uma posição de índice especificada. |
| Vector<T>(T[]) |
Cria um vetor de uma matriz especificada. |
Propriedades
| Nome | Description |
|---|---|
| AllBitsSet |
Obtém um novo Vector<T> com todos os bits definidos como 1. |
| Count |
Retorna o número de elementos armazenados no vetor. |
| Indices |
Obtém um novo Vector<T> com os elementos definidos como seu índice. |
| IsSupported |
Obtém um valor que indica se |
| Item[Int32] |
Obtém o elemento em um índice especificado. |
| One |
Retorna um vetor que contém todos. |
| Zero |
Retorna um vetor que contém todos os zeros. |
Métodos
| Nome | Description |
|---|---|
| CopyTo(Span<Byte>) |
Copia o vetor para o determinado Span<T>. |
| CopyTo(Span<T>) |
Copia o vetor para o intervalo determinado. . |
| CopyTo(T[], Int32) |
Copia a instância de vetor para uma matriz de destino especificada começando em uma posição de índice especificada. |
| CopyTo(T[]) |
Copia a instância de vetor para uma matriz de destino especificada. |
| Equals(Object) |
Retorna um valor que indica se essa instância é igual a um objeto especificado. |
| Equals(Vector<T>) |
Retorna um valor que indica se essa instância é igual a um vetor especificado. |
| GetHashCode() |
Retorna o código hash dessa instância. |
| ToString() |
Retorna a representação de cadeia de caracteres desse vetor usando a formatação padrão. |
| ToString(String, IFormatProvider) |
Retorna a representação de cadeia de caracteres desse vetor usando a cadeia de caracteres de formato especificada para formatar elementos individuais e o provedor de formato especificado para definir a formatação específica da cultura. |
| ToString(String) |
Retorna a representação de cadeia de caracteres desse vetor usando a cadeia de caracteres de formato especificada para formatar elementos individuais. |
| TryCopyTo(Span<Byte>) |
Tenta copiar o vetor para o intervalo de bytes determinado. |
| TryCopyTo(Span<T>) |
Tenta copiar o vetor para o determinado Span<T>. |
Operadores
| Nome | Description |
|---|---|
| Addition(Vector<T>, Vector<T>) |
Adiciona dois vetores juntos. |
| BitwiseAnd(Vector<T>, Vector<T>) |
Retorna um novo vetor executando uma operação bit a bit |
| BitwiseOr(Vector<T>, Vector<T>) |
Retorna um novo vetor executando uma operação bit a bit |
| Division(Vector<T>, T) |
Divide um vetor por um escalar para calcular o quociente por elemento. |
| Division(Vector<T>, Vector<T>) |
Divide o primeiro vetor pelo segundo. |
| Equality(Vector<T>, Vector<T>) |
Retorna um valor que indica se cada par de elementos em dois vetores especificados são iguais. |
| ExclusiveOr(Vector<T>, Vector<T>) |
Retorna um novo vetor executando uma operação bit a bit |
| Explicit(Vector<T> to Vector<Byte>) |
Reinterpreta os bits do vetor especificado em um vetor do tipo Byte. |
| Explicit(Vector<T> to Vector<Double>) |
Reinterpreta os bits do vetor especificado em um vetor do tipo Double. |
| Explicit(Vector<T> to Vector<Int16>) |
Reinterpreta os bits do vetor especificado em um vetor do tipo Int16. |
| Explicit(Vector<T> to Vector<Int32>) |
Reinterpreta os bits do vetor especificado em um vetor do tipo Int32. |
| Explicit(Vector<T> to Vector<Int64>) |
Reinterpreta os bits do vetor especificado em um vetor do tipo Int64. |
| Explicit(Vector<T> to Vector<IntPtr>) |
Reinterpreta os bits de um vetor de origem em um vetor de inteiros de tamanho nativo. |
| Explicit(Vector<T> to Vector<SByte>) |
Reinterpreta os bits do vetor especificado em um vetor do tipo SByte. |
| Explicit(Vector<T> to Vector<Single>) |
Reinterpreta os bits do vetor especificado em um vetor do tipo Single. |
| Explicit(Vector<T> to Vector<UInt16>) |
Reinterpreta os bits do vetor especificado em um vetor do tipo UInt16. |
| Explicit(Vector<T> to Vector<UInt32>) |
Reinterpreta os bits do vetor especificado em um vetor do tipo UInt32. |
| Explicit(Vector<T> to Vector<UInt64>) |
Reinterpreta os bits do vetor especificado em um vetor do tipo UInt64. |
| Explicit(Vector<T> to Vector<UIntPtr>) |
Reinterpreta os bits de um vetor de origem em um vetor de inteiros não assinados de tamanho nativo. |
| Inequality(Vector<T>, Vector<T>) |
Retorna um valor que indica se qualquer par único de elementos nos vetores especificados não é igual. |
| LeftShift(Vector<T>, Int32) |
Desloca cada elemento de um vetor deixado pela quantidade especificada. |
| Multiply(T, Vector<T>) |
Multiplica um vetor por um valor escalar especificado. |
| Multiply(Vector<T>, T) |
Multiplica um vetor por um valor escalar especificado. |
| Multiply(Vector<T>, Vector<T>) |
Retorna um novo vetor cujos valores são o produto de cada par de elementos em dois vetores especificados. |
| OnesComplement(Vector<T>) |
Retorna um novo vetor cujos elementos são obtidos usando o complemento de elementos de um vetor especificado. |
| RightShift(Vector<T>, Int32) |
Desloca (assinado) cada elemento de um vetor à direita pela quantidade especificada. |
| Subtraction(Vector<T>, Vector<T>) |
Subtrai o segundo vetor do primeiro. |
| UnaryNegation(Vector<T>) |
Nega um determinado vetor. |
| UnaryPlus(Vector<T>) |
Retorna um determinado vetor inalterado. |
| UnsignedRightShift(Vector<T>, Int32) |
Shifts (sem sinal) cada elemento de um vetor à direita pela quantidade especificada. |
Propriedades de Extensão
| Nome | Description |
|---|---|
| E |
Representa um único vetor de um tipo numérico especificado adequado para otimização de baixo nível de algoritmos paralelos. |
| Epsilon |
Representa um único vetor de um tipo numérico especificado adequado para otimização de baixo nível de algoritmos paralelos. |
| NaN |
Representa um único vetor de um tipo numérico especificado adequado para otimização de baixo nível de algoritmos paralelos. |
| NegativeInfinity |
Representa um único vetor de um tipo numérico especificado adequado para otimização de baixo nível de algoritmos paralelos. |
| NegativeOne |
Representa um único vetor de um tipo numérico especificado adequado para otimização de baixo nível de algoritmos paralelos. |
| NegativeZero |
Representa um único vetor de um tipo numérico especificado adequado para otimização de baixo nível de algoritmos paralelos. |
| Pi |
Representa um único vetor de um tipo numérico especificado adequado para otimização de baixo nível de algoritmos paralelos. |
| PositiveInfinity |
Representa um único vetor de um tipo numérico especificado adequado para otimização de baixo nível de algoritmos paralelos. |
| Tau |
Representa um único vetor de um tipo numérico especificado adequado para otimização de baixo nível de algoritmos paralelos. |
Métodos de Extensão
| Nome | Description |
|---|---|
| As<TFrom,TTo>(Vector<TFrom>) | |
| AsVector128<T>(Vector<T>) |
Reinterpreta um Vector<T> como um novo Vector128<T>. |
| AsVector256<T>(Vector<T>) |
Reinterpreta um Vector<T> como um novo Vector256<T>. |
| AsVector512<T>(Vector<T>) |
Reinterpreta um Vector<T> como um novo Vector512<T>. |
| GetElement<T>(Vector<T>, Int32) |
Obtém o elemento no índice especificado. |
| Store<T>(Vector<T>, T*) |
Armazena um vetor no destino especificado. |
| StoreAligned<T>(Vector<T>, T*) |
Armazena um vetor no destino alinhado especificado. |
| StoreAlignedNonTemporal<T>(Vector<T>, T*) |
Armazena um vetor no destino alinhado especificado. |
| StoreUnsafe<T>(Vector<T>, T, UIntPtr) |
Armazena um vetor no destino especificado. |
| StoreUnsafe<T>(Vector<T>, T) |
Armazena um vetor no destino especificado. |
| ToScalar<T>(Vector<T>) |
Converte o vetor fornecido em um escalar que contém o valor do primeiro elemento. |
| WithElement<T>(Vector<T>, Int32, T) |
Cria um novo Vector<T> com o elemento no conjunto de índice especificado para o valor especificado e os elementos restantes definidos com o mesmo valor que no vetor especificado. |