Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
F# dilinde iki özel durum kategorisi vardır: .NET özel durum türleri ve F# özel durum türleri. Bu konuda F# özel durum türlerinin nasıl tanımlanacağı ve kullanılacağı açıklanmaktadır.
Sözdizimi
exception exception-type of argument-type
Açıklamalar
Önceki söz diziminde , özel durum türü yeni bir F# özel durum türünün adıdır ve bağımsız değişken türü , bu tür bir özel durum oluştururken sağlanacak bağımsız değişkenin türünü temsil eder. Bağımsız değişken türü için bir tanımlama grubu türü kullanarak birden çok bağımsız değişken belirtebilirsiniz.
F# özel durumu için tipik bir tanım aşağıdakine benzer.
exception MyError of string
aşağıdaki gibi işlevini kullanarak raise bu tür bir özel durum oluşturabilirsiniz.
raise (MyError("Error message"))
Aşağıdaki örnekte gösterildiği gibi bir F# özel durum türünü doğrudan bir try...with ifadedeki filtrelerde kullanabilirsiniz.
exception Error1 of string
// Using a tuple type as the argument type.
exception Error2 of string * int
let function1 x y =
try
if x = y then raise (Error1("x"))
else raise (Error2("x", 10))
with
| Error1(str) -> printfn "Error1 %s" str
| Error2(str, i) -> printfn "Error2 %s %d" str i
function1 10 10
function1 9 2
F# içinde anahtar sözcüğüyle exception tanımladığınız özel durum türü, öğesinden System.Exceptiondevralan yeni bir türdür.