ReadOnlySpan<T> 結構
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
提供任意記憶體之連續區域的型別安全和記憶體安全唯讀表示。
generic <typename T>
public value class ReadOnlySpan
public readonly ref struct ReadOnlySpan<T>
[System.Runtime.InteropServices.Marshalling.NativeMarshalling(typeof(System.Runtime.InteropServices.Marshalling.ReadOnlySpanMarshaller<,>))]
public readonly ref struct ReadOnlySpan<T>
type ReadOnlySpan<'T> = struct
[<System.Runtime.InteropServices.Marshalling.NativeMarshalling(typeof(System.Runtime.InteropServices.Marshalling.ReadOnlySpanMarshaller<,>))>]
type ReadOnlySpan<'T> = struct
Public Structure ReadOnlySpan(Of T)
類型參數
- T
中的 ReadOnlySpan<T> 專案類型。
- 繼承
- 屬性
備註
ReadOnlySpan<T>
是配置在堆疊上的 ref 結構 ,而且永遠無法逸出至 Managed 堆積。 Ref 結構類型有一些限制,可確保它們無法升階至 Managed 堆積,包括它們無法進行 Boxed、擷取在 Lambda 運算式中、指派給類型的 Object 變數、指派 dynamic
給變數,而且無法實作任何介面類別型。
ReadOnlySpan<T>
實例通常用來參考陣列或陣列一部分的專案。 不過,不同于陣列, ReadOnlySpan<T>
實例可以指向堆疊上受控記憶體、原生記憶體或記憶體。
建構函式
ReadOnlySpan<T>(T) |
在指定的參考周圍建立長度 1 的新 ReadOnlySpan<T> 。 |
ReadOnlySpan<T>(T[]) |
在整個指定的陣列上建立新的 ReadOnlySpan<T>。 |
ReadOnlySpan<T>(T[], Int32, Int32) |
建立新的 ReadOnlySpan<T>,其中包含起始於指定索引之陣列的指定元素數目。 |
ReadOnlySpan<T>(Void*, Int32) |
透過指定的 |
屬性
Empty |
傳回空的 ReadOnlySpan<T>。 |
IsEmpty |
傳回指出目前唯讀範圍是空的的值。 |
Item[Int32] |
從位於指定零基索引的唯讀範圍取得項目。 |
Length |
唯讀範圍中的項目數目。 |
方法
CastUp<TDerived>(ReadOnlySpan<TDerived>) |
提供任意記憶體之連續區域的型別安全和記憶體安全唯讀表示。 |
CopyTo(Span<T>) |
將這個 ReadOnlySpan<T> 的內容複製到目的地 Span<T>。 |
Equals(Object) |
已淘汰.
已淘汰.
不支援。 擲回 NotSupportedException。 |
GetEnumerator() |
傳回這個 ReadOnlySpan<T> 的列舉值。 |
GetHashCode() |
已淘汰.
不支援。 擲回 NotSupportedException。 |
GetPinnableReference() |
傳回 T 型別物件的唯讀參考,該物件可用於釘選。 這個方法旨在支援 .NET 編譯器,而不是由使用者程式碼呼叫。 |
Slice(Int32) |
從起始於指定索引的目前唯讀範圍形成配量。 |
Slice(Int32, Int32) |
從起始於指定索引之指定長度的目前唯讀範圍形成配量。 |
ToArray() |
將這個唯讀範圍的內容複製到新的陣列。 |
ToString() |
傳回這個 ReadOnlySpan<T> 的字串表示。 |
TryCopyTo(Span<T>) |
嘗試將此 ReadOnlySpan<T> 的內容複製到 Span<T> 並傳回指出作業是否成功的值。 |
運算子
Equality(ReadOnlySpan<T>, ReadOnlySpan<T>) |
傳回值,這個值表示兩個 ReadOnlySpan<T> 執行個體是否相等。 |
Implicit(ArraySegment<T> to ReadOnlySpan<T>) |
定義從 ArraySegment<T> 到 ReadOnlySpan<T> 的隱含轉換。 |
Implicit(T[] to ReadOnlySpan<T>) |
定義從陣列到 ReadOnlySpan<T> 的隱含轉換。 |
Inequality(ReadOnlySpan<T>, ReadOnlySpan<T>) |
傳回值,這個值表示兩個 ReadOnlySpan<T> 執行個體是否不相等。 |
擴充方法
適用於
另請參閱
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應