VBuffer<T> Struktura
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Bufor obsługujący reprezentacje gęste i rozrzedłe. Jest to typ reprezentacji dla wszystkich VectorDataViewType wystąpień. Jawnie zdefiniowane wartości tego wektora są uwidocznione za pomocą GetValues() metod i, jeśli nie są gęste, 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)
Parametry typu
- T
Typ wektora. Nie ma ograniczeń czasu kompilacji dotyczących tego, co może być, ale ten kod i praktycznie cały używany kod VBuffer<T> sprawia, że założenie, że przypisanie wartości jest wystarczające do całkowitej niezależnej kopii. Oznacza to na przykład, że bufor buforów nie jest możliwy. Ale takie rzeczy jak Int32, Singlei ReadOnlyMemory<T>, są całkowicie w porządku.
- Dziedziczenie
-
VBuffer<T>
- Implementuje
Uwagi
Ta struktura jest sama niezmienna, ale aby umożliwić edycję buforu, w tym ponowne użycie buforów wewnętrznych, można uzyskać dostęp do wariantu VBufferEditor<T> modyfikowalnego za pośrednictwem programu VBuffer<T>.
W całym kodzie przyjmujemy założenie, że rozrzedzenie VBuffer<T> jest logicznie równoważne gęstości VBuffer<T> z wartością domyślną wypełniania T wartości domyślnych.
Konstruktory
| Nazwa | Opis |
|---|---|
| VBuffer<T>(Int32, Int32, T[], Int32[]) |
Skonstruuj ewentualnie rozrzedliwą reprezentację wektorów. |
| VBuffer<T>(Int32, T[], Int32[]) |
Konstruowanie gęstej reprezentacji. Tablica |
Pola
| Nazwa | Opis |
|---|---|
| Length |
Długość logiczna buforu. |
Właściwości
| Nazwa | Opis |
|---|---|
| IsDense |
Pobiera wartość wskazującą, czy każdy element logiczny jest jawnie reprezentowany w buforze. |
Metody
| Nazwa | Opis |
|---|---|
| Copy(T[], Int32, VBuffer<T>, Int32) |
Skopiuj z sekcji tablicy źródłowej do danego miejsca docelowego. |
| CopyTo(Span<T>, Int32, T) |
Skopiuj z tego buforu do danego zakresu docelowego, zaczynając od określonego indeksu. To "zagęszczenie". |
| CopyTo(Span<T>) |
Skopiuj z tego buforu do danego zakresu docelowego. To "zagęszczenie". |
| CopyTo(VBuffer<T>, Int32, Int32) |
Skopiuj zakres wartości z tego buforu do danego miejsca docelowego. |
| CopyTo(VBuffer<T>) |
Skopiuj z tego buforu do danego miejsca docelowego. |
| CopyToDense(VBuffer<T>) |
Skopiuj z tego buforu do danego miejsca docelowego, wymuszając gęstą reprezentację. |
| DenseValues() |
Zwraca wyliczenie z elementami Length reprezentującymi wartości. |
| GetEnumerator() |
Zwraca moduł wyliczający, który iteruje wartości w programie VBuffer. |
| GetIndices() |
Indeksy. W przypadku gęstej reprezentacji ta tablica nie jest używana i zwróci domyślny zakres "pusty".
W przypadku reprezentacji rozrzedzonej jest równoległa do tej zwracanej z GetValues() i określa logiczne indeksy odpowiadających im wartości, w kolejności rosnącej z zakresu od 0 do Length wyłącznych, odpowiadających wszystkim jawnie zdefiniowanym wartościom. Wszystkie wartości w nieokreślonych indeksach powinny być traktowane jako niejawnie zdefiniowane z wartością |
| GetItemOrDefault(Int32, T) |
Pobiera element przechowywany w tej strukturze. W przypadku gęstego wektora jest to proste wyszukiwanie.
W przypadku wektora rozrzedzona spróbuje znaleźć wpis z tym indeksem i ustawić |
| GetItemOrDefault(Int32) |
Wariant tej GetItemOrDefault(Int32, T) wartości zwraca wartość zamiast przekazywać ją z powrotem przy użyciu parametru odwołania. |
| GetValues() |
Jawnie reprezentowane wartości. Gdy ta IsDensewartość , Length zwracana wartość będzie równa Length, a w przeciwnym razie będzie mieć długość mniejszą niż Length. |
| Items(Boolean) |
Zwraca wspólną listę wszystkich par indeksu/wartości. |
| ToString() |
Bufor obsługujący reprezentacje gęste i rozrzedłe. Jest to typ reprezentacji dla wszystkich VectorDataViewType wystąpień. Jawnie zdefiniowane wartości tego wektora są uwidocznione za pomocą GetValues() metod i, jeśli nie są gęste, GetIndices(). |