Megosztás a következőn keresztül:


Szimbólumok és operátorok referenciája

Ez a cikk az F#-ban használt szimbólumokat és operátorokat leíró táblázatokat tartalmaz, és ezek rövid leírását tartalmazza. Egyes szimbólumok és operátorok két vagy több bejegyzést is használnak, ha több szerepkörben használják.

Megjegyzés, fordító irányelv és attribútumszimbólumok

Az alábbi táblázat a megjegyzésekhez, fordítói irányelvekhez és attribútumokhoz kapcsolódó szimbólumokat ismerteti.

Szimbólum vagy operátor Hivatkozások Leírás
(*...*) Több sorra kiterjedő megjegyzést tagolt.
// Egysoros megjegyzés elejét jelzi.
/// XML-dokumentáció XML-megjegyzést jelez.
# Fordítói irányelvek Előtagok egy előfeldolgozási vagy fordítói irányelvhez.
[<...>] Attribútumok Elhatárolja az attribútumot.

Sztring- és azonosítószimbólumok

Az alábbi táblázat a sztringekhez kapcsolódó szimbólumokat ismerteti.

Szimbólum vagy operátor Hivatkozások Leírás
" karakterláncok Elválaszt egy szöveges sztringet.
@" karakterláncok Elindít egy szó szerinti szöveges sztringet, amely tartalmazhat fordított perjeleket és egyéb karaktereket.
""" karakterláncok Három idézőjeles szöveges sztringet tagolt, amely tartalmazhat fordított perjeleket, idézőjeleket és egyéb karaktereket.
$" Interpolált sztringek Interpolált sztringet indít el.
' literálok Egy karakteres literál elválasztása.
``...`` Elválaszt egy olyan azonosítót, amely egyébként nem lenne jogi azonosító, például nyelvi kulcsszó.
\ karakterláncok A következő karakter feloldása; karakter- és sztringkonstansokban használatos.

Aritmetikai operátorok

Az alábbi táblázat az aritmetikai operátorokat ismerteti.

Szimbólum vagy operátor Hivatkozások Leírás
+ Számtani operátorok
  • Bináris operátorként használva hozzáadja a bal és a jobb oldalt.
  • Ha nem naplózatlan operátorként használják, pozitív mennyiséget jelez. (Formálisan ugyanazt az értéket állítja elő változatlan előjellel.)
- Számtani operátorok
  • Bináris operátorként használva kivonja a jobb oldalt a bal oldalról.
  • Ha nem kötelező operátorként használják, egy negációs műveletet hajt végre.
* Számtani operátorok

Tömbök

Mértékegységek
  • Bináris operátorként használva megszorozza a bal és a jobb oldalt.
  • Típusokban a párosítást egy tusban jelzi.
  • Mértékegységtípusokban használatos.
/ Számtani operátorok

Mértékegységek
  • A bal oldalt (számlálót) a jobb oldalon (nevező) osztja el.
  • Mértékegységtípusokban használatos.
% Számtani operátorok Kiszámítja az egész szám fennmaradó részét.
** Számtani operátorok Kiszámítja az exponenciális műveletet (x ** y a függvény erejét yjelentix).

Összehasonlító operátorok

Az alábbi táblázat az összehasonlító operátorokat ismerteti.

Szimbólum vagy operátor Hivatkozások Leírás
< Számtani operátorok A kisebb műveletet számítja ki.
<> Számtani operátorok Visszaadja true , ha a bal oldal nem egyenlő a jobb oldallal, ellenkező esetben hamis értéket ad vissza.
<= Számtani operátorok Akkor adja true vissza, ha a bal oldal kisebb vagy egyenlő a jobb oldalon, ellenkező esetben a visszaadott falseérték.
= Számtani operátorok Visszaadja true , ha a bal oldal egyenlő a jobb oldallal, ellenkező esetben a visszatérési falseérték.
> Számtani operátorok Akkor adja true vissza, ha a bal oldal nagyobb, mint a jobb oldal; ellenkező esetben a visszaadott falseérték.
>= Számtani operátorok Akkor ad true vissza, ha a bal oldal nagyobb vagy egyenlő a jobb oldalnál, ellenkező esetben a visszaadott falseérték.

Logikai operátorok

Az alábbi táblázat az aritmetikai és logikai operátorok szimbólumait ismerteti.

Szimbólum vagy operátor Hivatkozások Leírás
&& Logikai operátorok Kiszámítja a logikai ÉS műveletet.
|| Logikai operátorok Kiszámítja a logikai VAGY műveletet.

Bitenkénti operátorok

Az alábbi táblázat a bitenkénti operátorokat ismerteti.

Szimbólum vagy operátor Hivatkozások Leírás
&&& bitenkénti operátorok Kiszámítja a bitenkénti ÉS műveletet.
<<< bitenkénti operátorok A bal oldalon lévő mennyiség bitjeinek eltolása balra a jobb oldalon megadott bitek számával.
>>> bitenkénti operátorok A bal oldalon lévő mennyiség bitjeinek jobbra váltása a jobb oldalon megadott helyek számával.
^^^ bitenkénti operátorok Kiszámítja a bitenkénti kizárólagos VAGY műveletet.
||| bitenkénti operátorok Kiszámítja a bitenkénti VAGY műveletet.
~~~ bitenkénti operátorok Kiszámítja a bitenkénti NOT műveletet.

Függvényszimbólumok és operátorok

Az alábbi táblázat a függvényekhez kapcsolódó operátorokat és szimbólumokat ismerteti.

Szimbólum vagy operátor Hivatkozások Leírás
-> Funkciók A függvénykifejezésekben elkülöníti a bemeneti mintát a kimeneti kifejezéstől.
|> Funkciók A bal oldal eredményét átadja a jobb oldalon lévő függvénynek (előrevezető csőkezelő).
||> ( ||> )<'T1,'T2;'U> függvény A bal oldalon lévő két argumentum rekordját a jobb oldalon lévő függvénynek adja át.
|||> ( |||> )<'T1,'T2;'T3;'U> függvény A bal oldalon három argumentum rekordját adja át a jobb oldalon lévő függvénynek.
>> Funkciók Két függvényt alkot (továbbítási összetétel operátor).
<< Funkciók Fordított sorrendben két függvényt állít össze; a másodikat hajtja végre először (visszamenőleges összeállítási operátor).
<| Funkciók A jobb oldalon lévő kifejezés eredményét átadja a bal oldalon lévő függvénynek (hátrafelé csöves operátor).
<|| ( <|| )<' T1,'T2;'U> függvény A jobb oldalon két argumentum rekordját adja át a bal oldali függvénynek.
<||| ( <||| )<' T1,'T2,'T3;'U> függvény A jobb oldalon három argumentum rekordját adja át a bal oldali függvénynek.

Típusszimbólumok és operátorok

Az alábbi táblázat a típusjegyzetekkel és a típustesztekkel kapcsolatos szimbólumokat ismerteti.

Szimbólum vagy operátor Hivatkozások Leírás
-> Funkciók Függvénytípusokban az argumentumokat és a visszaadott értékeket elválasztja, és eredményül is ad eredményül szekvenciakifejezéseket.
: Funkciók Egy típusjegyzetben elválaszt egy paramétert vagy tagnevet a típusától.
:> Casting and Conversions A hierarchiában magasabb típussá alakít át egy típust.
:? illesztési kifejezések Visszaadja true , ha az érték megegyezik a megadott típussal (beleértve az altípust is); ellenkező esetben a (típusteszt-operátor) értéket adja vissza false .
:?> Casting and Conversions A típust a hierarchiában alacsonyabb típussá alakítja át.
# Rugalmas típusok Ha egy típussal használja, egy rugalmas típust jelöl, amely egy típusra vagy annak származtatott típusaira hivatkozik.
' Automatikus általánosítás Általános típusparamétert jelez.
<...> Automatikus általánosítás Elválasztja a típusparamétereket.
^ Statikusan feloldott típusparaméterek

karakterláncok
  • Olyan típusparamétereket ad meg, amelyeket fordításkor, nem futásidőben kell feloldani.
  • Sztringeket fűz össze.
{} Osztály vagy rekord Ha a type kulcsszóval használja, elhatárolja az osztályt vagy rekordot. A típus egy osztály, amikor a tagok deklarálva vannak, vagy a class kulcsszót használják. Ellenkező esetben ez egy rekord.
{||} Névtelen rekord Névtelen rekordot jelöl

Tagkeresésben és szeletkifejezésekben használt szimbólumok

Az alábbi táblázat a tagkeresésben és a szeletkifejezésekben használt további szimbólumokat ismerteti.

Szimbólum vagy operátor Hivatkozások Leírás
. Tagok Hozzáfér egy taghoz, és különválasztja az egyes neveket egy teljes névvel.
[...] vagy .[...] Tömbök

Indexelt tulajdonságok

Szeletkifejezések
Tömbbe, sztringbe vagy gyűjteménybe indexel, vagy egy gyűjtemény egy szeletét veszi fel.

A rekordban, a listában, a tömbben, az egységkifejezésekben és a mintákban használt szimbólumok

Az alábbi táblázat a listákhoz, listákhoz, egységértékekhez és tömbökhöz kapcsolódó szimbólumokat ismerteti.

Szimbólum vagy operátor Hivatkozások Leírás
( ) Egység típusa Az egységtípus egyetlen értékét jelöli.
, Tömbök Elválasztja a rekord elemeit, vagy írja be a paramétereket.
:: Listák

illesztési kifejezések
  • Létrehoz egy listát. A bal oldalon lévő elem elő van állítva a jobb oldalon lévő listára.
  • A lista részeinek elválasztásához használt mintamegfeleltetésben.
@ Listák Összefűz két listát.
[...] Listák Elválasztja a lista elemeit.
[|...|] Tömbök Elhatárolja a tömb elemeit.

Imperatív kifejezésekben használt szimbólumok

Az alábbi táblázat a kifejezésekben használt további szimbólumokat ismerteti.

Szimbólum vagy operátor Hivatkozások Leírás
<- értékek Értéket rendel hozzá egy változóhoz.
; Részletes szintaxis

Elválasztja a kifejezéseket (többnyire részletes szintaxisban használatos). A rekordok listájának vagy mezőinek elemeit is elkülöníti.

Szekvenciákban és számítási kifejezésekben használt további szimbólumok

Az alábbi táblázat a szekvenciákban és számítási kifejezésekben használt további szimbólumokat ismerteti.

Szimbólum vagy operátor Hivatkozások Leírás
-> Szekvenciák Kifejezéseket ad (szekvenciakifejezésekben); a kulcsszavaknak do yield megfelelő.
! Számítási kifejezések Egy kulcsszó után a kulcsszó viselkedésének módosított verzióját jelzi egy számítási kifejezés által szabályozott módon.

A találati mintákban használt további szimbólumok

Az alábbi táblázat a mintaegyezéshez kapcsolódó szimbólumokat ismerteti.

Szimbólum vagy operátor Hivatkozások Leírás
-> illesztési kifejezések Egyező kifejezésekben használatos.
& Mintaegyezés
  • A más nyelvekkel való együttműködéshez használható mutable érték címét számítja ki.
  • AND-mintákban használatos.
_ illesztési kifejezések

Generikus típusok
  • Helyettesítő karaktermintát jelez.
  • Névtelen általános paramétert ad meg.
| illesztési kifejezések Elhatárolja az egyes egyezéses eseteket, az egyes diszkriminált uniós eseteket és az enumerálási értékeket.

A deklarációkban használt további szimbólumok

Az alábbi táblázat a deklarációkhoz kapcsolódó szimbólumokat ismerteti.

Szimbólum vagy operátor Hivatkozások Leírás
(|...|) aktív minták Egy aktív minta nevét tagolja. Más néven banánklipek.
? Paraméterek és argumentumok Opcionális argumentumot ad meg.
~~ Operátor túlterhelése A unary negation operátor túlterhelésének deklarálására szolgál.
~- Operátor túlterhelése A mínusz operátor túlterhelésének deklarálásához használatos.
~+ Operátor túlterhelése A unary plus operátor túlterhelésének deklarálásához használatos.

Az idézőjelekben használt további szimbólumok

Az alábbi táblázat a kódajánlatokhoz kapcsolódó szimbólumokat ismerteti.

Szimbólum vagy operátor Hivatkozások Leírás
<@...@> Kódajánlatok A beírt kód idézőjelének elválasztása.
<@@...@@> Kódajánlatok Nem beírt kód idézőjelének elválasztása.
% Kódajánlatok Kifejezések beírt kód idézőjelekké való összeadására szolgál.
%% Kódajánlatok Kifejezések nem beírt kód idézőjelekké való összeadására szolgál.

Dinamikus keresési operátorok

Az alábbi táblázat a dinamikus keresési kifejezésekben használt további szimbólumokat ismerteti. Ezeket általában nem használják a rutin F# programozásban, és ezeknek az operátoroknak az implementációi nem érhetők el az F# alapvető kódtárában.

Szimbólum vagy operátor Hivatkozások Leírás
? Dinamikus metódus- és tulajdonsághívások operátoraként használható.
? ... <- ... Operátorként használható a dinamikus tulajdonságok beállításához.

Null értékű operátorok a lekérdezésekben

A null értékű operátorok a lekérdezési kifejezésekben való használatra vannak definiálva. Az alábbi táblázat ezeket az operátorokat mutatja be.

Szimbólum vagy operátor Hivatkozások Leírás
%? Null értékű operátorok Kiszámítja az egész szám fennmaradó részét, ha a jobb oldal null értékű típus.
*? Null értékű operátorok Megszorozza a bal és a jobb oldalt, ha a jobb oldal null értékű.
+? Null értékű operátorok Hozzáadja a bal és a jobb oldalt, ha a jobb oldal null értékű.
-? Null értékű operátorok Kivonja a jobb oldalt a bal oldalról, ha a jobb oldal null értékű.
/? Null értékű operátorok A bal oldalt a jobb oldalon osztja el, ha a jobb oldal null értékű típus.
<? Null értékű operátorok A műveletnél kisebb értéket számít ki, ha a jobb oldal null értékű típus.
<>? Null értékű operátorok Akkor számítja ki a "nem egyenlő" műveletet, ha a jobb oldal null értékű típus.
<=? Null értékű operátorok A "kisebb vagy egyenlő" műveletet számítja ki, ha a jobb oldal null értékű típus.
=? Null értékű operátorok Kiszámítja az "egyenlőség" műveletet, ha a jobb oldal null értékű típus.
>? Null értékű operátorok Kiszámítja a "nagyobb mint" műveletet, ha a jobb oldal null értékű típus.
>=? Null értékű operátorok Kiszámítja a "nagyobb vagy egyenlő" műveletet, ha a jobb oldal null értékű típus.
?>=, ?>, ?<=, ?<, ?=?<>, ?+, ?-, , ?*?/ Null értékű operátorok Egyenértékű a megfelelő operátorok nélkül? előtagot, ahol a bal oldalon null értékű típus található.
>=?, >?, <=?, <?, =?<>?, +?, -?, , *?/? Null értékű operátorok Egyenértékű a megfelelő operátorok nélkül? utótag, ahol a jobb oldalon null értékű típus található.
?>=?, ?>?, ?<=?, ?<?, ?=??<>?, ?+?, ?-?, , ?*??/? Null értékű operátorok Egyenértékű a megfelelő operátorokkal a környező kérdőjelek nélkül, ahol mindkét oldal null értékű típusok.

Referenciacella-operátorok (elavult)

Az alábbi táblázat a referenciacellákkal kapcsolatos szimbólumokat ismerteti. Ezeknek az operátoroknak a használata az F# 6-os számú tanácsadói üzeneteket generál. További információ: Referenciacella-művelettel kapcsolatos tanácsadási üzenetek.

Szimbólum vagy operátor Hivatkozások Leírás
! Referenciacellák Halaszt egy referenciacellát.
:= Referenciacellák Értéket rendel egy referenciacellához.

Operátorok elsőbbsége

Az alábbi táblázat az operátorok és más kifejezési kulcsszavak F#-ban megadott sorrendjét mutatja be a legalacsonyabb prioritástól a legmagasabb prioritásig. Az asszociativitás is szerepel a listán, ha van ilyen.

Operátor Asszociativity
as Right
when Right
| (cső) Balra
; Right
let Nem társító
function, fun, matchtry Nem társító
if Nem társító
not Right
-> Right
:= Right
, Nem társító
or, || Balra
&, && Balra
:>, :?> Right
< op, >op, =, |op, &op, &, $

(beleértve <<<, >>>, |||, &&&)
Balra
^ távírókezelő

(beleértve )^^^
Right
:: Right
:? Nem asszociatív
- op, +op A szimbólumok infix-felhasználására vonatkozik
* op, /op, %op Balra
** távírókezelő Right
f x (függvényalkalmazás)

(beleértve a lazy x, assert x)
Balra
| (mintaegyezés) Right
előtag operátorok (+op, -op, %, %%, &, !&&op, ~op) Balra
. Balra
f(x) Balra
f< Típusok> Balra

Az F# támogatja az egyéni operátorok túlterhelését. Ez azt jelenti, hogy saját operátorokat határozhat meg. Az előző táblázatban az op operátorkarakterek tetszőleges érvényes (esetleg üres) sorozata lehet, beépített vagy felhasználó által definiált. Így a táblázat segítségével meghatározhatja, hogy az egyéni operátorok milyen karaktersorozatot használnak a kívánt elsőbbségi szint eléréséhez. A bevezető . karakterek figyelmen kívül lesznek hagyva, amikor a fordító meghatározza az elsőbbséget.

Lásd még