Sdílet prostřednictvím


Hodnoty (F#)

Hodnoty v F# jsou množství, které mají specifický typ; hodnoty mohou být nedílnou nebo plovoucí desetinnou, znaků nebo text, seznamy, sekvence, matice, n-tic, discriminated sdružení, záznamy, typy tříd nebo funkce hodnoty.

Hodnota vazby

Termín vazby rozumí s definicí přidružení názvu.let Váže klíčové hodnoty, jako v následujících příkladech:

let a = 1
let b = 100u
let str = "text"

// A function value binding.

let f x = x + 1

Typ hodnoty je odvodit z definice.Pro primitivní typ, například číslo nedílnou nebo plovoucí bod se určí typ z typu literál.Proto v předchozím příkladu kompilátor odvodí typ b se unsigned intk tomu, že kompilátor odvodí typ a se int.Typ funkce hodnoty se stanoví z vrácená hodnota v těle funkce.Další informace o typech hodnotu funkce, viz Funkce (F#).Další informace o typech literálu, viz Literály (F#).

Proč je neměnná?

Nezměnitelné hodnoty jsou hodnoty, které nelze změnit během spuštění programu.Pokud jsou pro jazycích jako C++, Visual Basic nebo C#, je možné překvapivé, že F# vloží nadřazenost nad nezměnitelné hodnoty, nikoli proměnné, které lze přiřadit nové hodnoty při provádění programu.Neměnná dat je důležitým prvkem funkční programování.V prostředí s více podprocesy jsou obtížně spravuje sdílené proměnlivých proměnných, které lze změnit pomocí mnoha různých podprocesů.Také s proměnlivých proměnné někdy může být obtížné zjistit, pokud proměnná může být změněn, když je předána jinou funkci.

V jazyce čistého funkční neexistují žádné proměnné a funkce přísně chovat jako matematické funkce.Pokud kód v procedurální jazyk používá přiřazení proměnné změnit hodnotu, má ekvivalentní kód v jazyce funkční nezměnitelné hodnota vstup a neměnná funkce různých nezměnitelné hodnoty jako výstup.Tento matematických strictness umožňuje přesnější odůvodnění o chování programu.Tento užší uvažování je co umožňuje kompilátory přísněji Zkontrolujte kód a efektivně optimalizovat a pomáhá usnadnit vývojářům pochopit a napsat správný kód.Proto je pravděpodobně snazší než obyčejný procesní kód ladění funkčnosti kódu.

F# není čistý funkční jazyk dosud plně podporuje funkční programování.Pomocí nezměnitelné hodnoty je vhodné, protože to umožňuje využívat důležité hledisko funkční programování kódu.

Proměnlivých proměnné

Můžete použít klíčové slovo mutable určit proměnné, kterou lze změnit.Proměnlivých proměnných v F# by obvykle mají omezený rozsah pole typu nebo jako místní hodnotu.Proměnlivých proměnné s omezeným rozsahem jsou jednodušší ovládání a méně pravděpodobné, že v nesprávné způsoby měnit.

Počáteční hodnota proměnlivých proměnné můžete přiřadit pomocí let klíčové slovo v stejným způsobem, jak by se definovat hodnotu.Rozdíl však je, že můžete následně přiřadit nové hodnoty proměnné proměnlivých pomocí <- operátor jako v následujícím příkladu.

let mutable x = 1
x <- x + 1

Příbuzná témata

Title

Description

Nechť vazby (F#)

Obsahuje informace o použití let klíčové slovo svázat názvy, hodnoty a funkce.

Funkce (F#)

Obsahuje přehled funkcí v F#.

Viz také

Koncepty

Hodnoty Null (F#)

Další zdroje

F# Language Reference