Seq.readonly<'T> İşlevi (F#)
Temsilci verilen sıra nesnesi için yeni bir sıra nesnesi oluşturur. Bu, özgün dizinin tekrar keşfedilmemesini ve tür değişimi ile değiştirilmemesini garantiler. Örneğin, bir dizi verilmişse, döndürülen sıra, dizi öğelerini döndürecektir ancak döndürülen sıra nesnesini bir diziye döndüremezsiniz.
Ad alanı/modül yolu: Microsoft.FSharp.Collections.Seq
Derleme: FSharp.Core (FSharp.Core.dll),
// Signature:
Seq.readonly : seq<'T> -> seq<'T>
// Usage:
Seq.readonly source
Parametreler
source
Türü: seq<'T>Giriş dizisi.
Özel Durumlar
Özel Durum |
Koşul |
---|---|
Giriş dizisi null olduğunda oluşturulur. |
Dönüş Değeri
Sonuç dizisi.
Notlar
Bu işlev adlı ReadOnly kodları derlenmiş derlemeleri. İşlev yansıtma veya F# dışındaki bir dilde erişiyorsanız, bu adı kullanın.
Örnek
Aşağıdaki kod Seq.readonly kesilebilir bir dizi sabit bir görünümünü oluşturmak için.
type ArrayContainer(start, finish) =
let internalArray = [| start .. finish |]
member this.RangeSeq = Seq.readonly internalArray
member this.RangeArray = internalArray
let newArray = new ArrayContainer(1, 10)
let rangeSeq = newArray.RangeSeq
let rangeArray = newArray.RangeArray
// These lines produce an error:
//let myArray = rangeSeq :> int array
//myArray.[0] <- 0
// The following line does not produce an error.
// It does not preserve encapsulation.
rangeArray.[0] <- 0
Platformlar
Windows 8, Windows 7, Windows Server 2012, Windows Server 2008 R2
Sürüm Bilgisi
F# Çekirdek Kitaplığı sürümleri
Desteklenen: 2.0, 4.0, Portable