VBuffer<T> Estructura

Definición

Búfer que admite representaciones densas y dispersas. Este es el tipo de representación de todas las VectorDataViewType instancias. Los valores definidos explícitamente de este vector se exponen a través GetValues() de y, si no es denso, GetIndices().

public readonly struct VBuffer<T> : System.Collections.IEnumerable
public readonly struct VBuffer<T>
type VBuffer<'T> = struct
    interface IEnumerable
type VBuffer<'T> = struct
Public Structure VBuffer(Of T)
Implements IEnumerable
Public Structure VBuffer(Of T)

Parámetros de tipo

T

Tipo del vector. No hay restricciones en tiempo de compilación sobre lo que podría ser, pero este código y prácticamente todo el código que usa VBuffer<T> supone que una asignación de un valor es suficiente para realizar una copia completamente independiente de él. Por lo tanto, por ejemplo, esto significa que no es posible un búfer de búferes. Pero, las cosas como Int32, Singley ReadOnlyMemory<T>, están totalmente bien.

Herencia
VBuffer<T>
Implementaciones

Comentarios

Esta estructura es inmutable por sí misma, pero para habilitar la edición del búfer, incluida la reutilización de los búferes internos, se puede acceder a una variante VBufferEditor<T> mutable a través VBuffer<T>de .

A lo largo del código, se supone que un disperso VBuffer<T> es lógicamente equivalente a un denso VBuffer<T> con el valor predeterminado para T rellenar los valores predeterminados.

Constructores

Nombre Description
VBuffer<T>(Int32, Int32, T[], Int32[])

Construir una representación vectorial posiblemente dispersa.

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

Construir una representación densa. La indices matriz suele no especificarse, pero si se especifica, se debe considerar que se debe mantener un búfer en el que se va a usar posiblemente.

Campos

Nombre Description
Length

Longitud lógica del búfer.

Propiedades

Nombre Description
IsDense

Obtiene un valor que indica si cada elemento lógico se representa explícitamente en el búfer.

Métodos

Nombre Description
Copy(T[], Int32, VBuffer<T>, Int32)

Copie de una sección de una matriz de origen en el destino especificado.

CopyTo(Span<T>, Int32, T)

Copie de este búfer en el intervalo de destino especificado, empezando por el índice especificado. Esto "densifica".

CopyTo(Span<T>)

Copie de este búfer en el intervalo de destino especificado. Esto "densifica".

CopyTo(VBuffer<T>, Int32, Int32)

Copie un intervalo de valores de este búfer en el destino especificado.

CopyTo(VBuffer<T>)

Copie de este búfer en el destino especificado.

CopyToDense(VBuffer<T>)

Copie de este búfer en el destino especificado, forzando una representación densa.

DenseValues()

Devuelve una enumerable con Length elementos, que representa los valores.

GetEnumerator()

Devuelve un enumerador que recorre en iteración los valores de VBuffer.

GetIndices()

Índices. Para una representación densa, esta matriz no se usa y devolverá el intervalo predeterminado "vacío". Para una representación dispersa, es paralela a la que se devuelve de GetValues() y especifica los índices lógicos de los valores correspondientes, en orden creciente, entre 0 inclusivos y Length exclusivos, correspondientes a todos los valores definidos explícitamente. Todos los valores de índices no especificados deben tratarse como definidos implícitamente con el valor predeterminado de T.

GetItemOrDefault(Int32, T)

Obtiene el elemento almacenado en esta estructura. En el caso de un vector denso, se trata de una búsqueda simple. En el caso de un vector disperso, intentará buscar la entrada con ese índice y establecer en destination ese valor almacenado, o si no se encontró dicho valor, asígnele el valor predeterminado.

GetItemOrDefault(Int32)

Variante de GetItemOrDefault(Int32, T) que devuelve el valor en lugar de volver a pasarlo mediante un parámetro de referencia.

GetValues()

Valores representados explícitamente. Cuando se trata IsDensede , el Length valor devuelto será igual Lengtha y, de lo contrario, tendrá una longitud menor que Length.

Items(Boolean)

Devuelve la lista conjunta de todos los pares de índice/valor.

ToString()

Búfer que admite representaciones densas y dispersas. Este es el tipo de representación de todas las VectorDataViewType instancias. Los valores definidos explícitamente de este vector se exponen a través GetValues() de y, si no es denso, GetIndices().

Se aplica a