Core.Operators 模組 (F#)
基本 F# 運算子。 這個模組會自動在所有 F# 程式碼中開啟。
**命名空間/模組路徑:**Microsoft.FSharp.Core
組件:FSharp.Core (在 FSharp.Core.dll 中)
[<AutoOpen>]
module Operators
備註
如需 F# 中運算子的概觀,請參閱符號和運算子參考 (F#)。
模組
模組 |
描述 |
---|---|
模組 Checked |
這個模組包含具有溢位檢查的基本算術運算 |
編譯器內建函式的模組,可以有效率地實作 F# 整數範圍和動態引動其他 F# 運算子 |
|
模組 Unchecked |
這個模組包含未套用執行階段和 (或) 靜態檢查的基本運算 |
值
值 |
描述 |
---|---|
( !) : 'T ref -> 'T |
將可變動的參考儲存格進行取值 (Dereference)。 |
( % ) : ^T1 -> ^T2 -> ^T3 |
多載模數運算子。 |
( &&& ) : ^T -> ^T -> ^T |
會多載位元AND運算子。 |
( * ) : ^T1 -> ^T2 -> ^T3 |
多載乘法運算子。 |
( ** ) : ^T -> ^U -> ^T |
多載指數運算子。 |
( + ) : ^T1 -> ^T2 -> ^T3 |
多載加法運算子。 |
( - ) : ^T1 -> ^T2 -> ^T3 |
多載減法運算子。 |
( ..) : ^T -> ^T -> seq<^T> |
標準多載範圍運算子,也..就是[n..m] 清單, seq {n..m} 序列的。 |
( ....) : ^T -> ^Step -> ^T -> seq<^T> |
標準多載略過範圍運算子,也..就是[n..skip..m] 清單, seq {n..skip..m} 序列的。 |
( / ) : ^T1 -> ^T2 -> ^T3 |
多載除法運算子。 |
( := ) : 'T ref -> 'T -> unit |
指派給可變動的參考儲存格。 |
( < ) : 'T -> 'T -> bool |
結構化小於比較。 |
( << ) : ('T2 -> 'T3) -> ('T1 -> 'T2) -> 'T1 -> 'T3 |
撰寫兩個函式,而右邊的函式會先套用。 |
( <<< ) : ^T -> int32 -> ^T |
依據所指定位元數的多載位元組左移運算子。 |
( <= ) : 'T -> 'T -> bool |
結構化小於或等於比較。 |
( <> ) : 'T -> 'T -> bool |
結構化不相等。 |
( <| ) : ('T -> 'U) -> 'T -> 'U |
將函式套用至值,右邊是值,而左邊是函式。 |
( <|| ) : ('T1 -> 'T2 -> 'U) -> 'T1 * 'T2 -> 'U |
將函式套用至兩個值,右邊是成對的值,而左邊是函式。 |
( <||| ) : ('T1 -> 'T2 -> 'T3 -> 'U) -> 'T1 * 'T2 * 'T3 -> 'U |
將函式套用至三個值,右邊是三重的值,而左邊是函式 |
( = ) : 'T -> 'T -> bool |
結構化相等。 |
( > ) : 'T -> 'T -> bool |
結構化大於。 |
( >= ) : 'T -> 'T -> bool |
結構化大於或等於。 |
( >> ) : ('T1 -> 'T2) -> ('T2 -> 'T3) -> 'T1 -> 'T3 |
撰寫兩個函式,而左邊的函式會先套用。 |
( >>> ) : ^T -> int32 -> ^T |
依據所指定位元數的多載位元組右移運算子。 |
( @ ) : 'T list -> 'T list -> 'T list |
串連兩個清單。 |
( ^ ) : string -> string -> string |
串連兩個字串。 也可能會使用運算子 '+' |
( ^^^ ) : ^T -> ^T -> ^T |
位元XOR多載的運算子。 |
( |> ) : 'T1 -> ('T1 -> 'U) -> 'U |
將函式套用至值,左邊是值,而右邊是函式 |
( ||> ) : 'T1 * 'T2 -> ('T1 -> 'T2 -> 'U) -> 'U |
將函式套用至兩個值,左邊是成對的值,而右邊是函式 |
( ||| ) : ^T -> ^T -> ^T |
會多載位元OR運算子 |
( |||> ) : 'T1 * 'T2 * 'T3 -> ('T1 -> 'T2 -> 'T3 -> 'U) -> 'U |
將函式套用至三個值,左邊是三重的值,而右邊是函式 |
( ~+ ) : ^T -> ^T |
多載前置加號運算子。 |
( ~- ) : ^T -> ^T |
多載一元負運算 |
( ~~~ ) : ^T -> ^T |
位元NOT多載運算子(Overload Operator)。 |
abs : ^T -> ^T |
所指定數字的絕對值 |
acos : ^T -> ^T |
所指定數字的反餘弦。 |
asin : ^T -> ^T |
所指定數字的反正弦。 |
atan : ^T -> ^T |
所指定數字的反正切。 |
atan2 : ^T1 -> ^T2 -> 'T2 |
x/y 的反正切函數,其中 x 和 y 是分別指定。 |
box : 'T -> obj |
對強型別值進行 Box 處理。 |
byte : ^T -> byte |
將引數轉換成位元組。 這是針對所有基本數字類資料型別的直接轉換。 對於字串,會使用 Parse 搭配 InvariantCulture 設定來轉換輸入。 否則,作業需要在輸入型別上使用適當的靜態轉換方法 |
ceil : ^T -> ^T |
所指定數字的最高限度值。 |
char : ^T -> char |
將引數轉換成字元。 數字輸入會根據字元的 UTF-16 編碼方式進行轉換。 字串輸入的長度必須剛好是一個字元。 針對其他輸入類型,作業需要在輸入型別上使用適當的靜態轉換方法 |
compare : 'T -> 'T -> int |
泛型比較 |
cos : ^T -> ^T |
指定之數字的餘弦函數。 |
cosh : ^T -> ^T |
指定之數字的雙曲線餘弦。 |
decimal : ^T -> decimal |
對所有基本數值型別使用直接轉換,以將引數轉換成 Decimal。 對於字串,會使用 Parse 搭配 InvariantCulture 設定來轉換輸入。 否則,作業需要在輸入型別上使用適當的靜態轉換方法 |
decr : int ref -> unit |
遞減含有整數的可變動參考儲存格。 |
defaultArg : 'T option -> 'T -> 'T |
在函式的實作中用來指定選擇性引數的預設值。 |
enum : int32 -> ^U |
將引數轉換成特定 enum 型別。 |
exit : int -> 'T |
如果安全性設定允許,則結束目前的硬體隔離處理序,否則引發例外狀況。 呼叫 Exit。 |
exp : ^T -> ^T |
指定之數字的指數。 |
失敗 : string -> exn |
建置 Exception 物件 |
failwith : string -> 'T |
擲回 Exception 例外狀況。 |
float : ^T -> float |
將引數轉換成 64 位元浮點數 這是針對所有基本數字類資料型別的直接轉換。 對於字串,會使用 Parse 搭配 InvariantCulture 設定來轉換輸入。 否則,作業需要在輸入型別上使用適當的靜態轉換方法 |
float32 : ^T -> float32 |
將引數轉換成 32 位元浮點數。 這是針對所有基本數字類資料型別的直接轉換。 對於字串,會使用 Parse 搭配 InvariantCulture 設定來轉換輸入。 否則,作業需要在輸入型別上使用適當的靜態轉換方法 |
floor : ^T -> ^T |
指定之數字的最低限度值。 |
fst : 'T1 * 'T2 -> 'T1 |
傳回 Tuple 的第一個項目,fst (a,b) = a。 |
hash : 'T -> int |
泛型雜湊函式,設計成傳回依據 = 運算子而相等之項目的相等雜湊值。 它預設會使用 F# 聯集的結構化雜湊、記錄和 Tuple 型別,來產生型別之完整內容的雜湊。 藉由針對每個型別實作 GetHashCode,即可一個型別接著一個型別地調整函式的準確行為。 |
id : 'T -> 'T |
身分識別函式。 |
ignore : 'T -> unit |
忽略傳遞的值。 這通常用來捨棄計算的結果 |
incr : int ref -> unit |
遞增含有整數的可變動參考儲存格。 |
infinity : float |
相當於 PositiveInfinity. |
infinityf : float32 |
相當於 PositiveInfinity. |
int : ^T -> int |
將引數轉換成 32 位元帶正負號的整數。 這是針對所有基本數字類資料型別的直接轉換。 對於字串,會使用 Parse 搭配 InvariantCulture 設定來轉換輸入。 否則,作業需要在輸入型別上使用適當的靜態轉換方法 |
int16 : ^T -> int16 |
將引數轉換成 16 位元帶正負號的整數。 這是針對所有基本數字類資料型別的直接轉換。 對於字串,會使用 Parse 搭配 InvariantCulture 設定來轉換輸入。 否則,作業需要在輸入型別上使用適當的靜態轉換方法 |
int32 : ^T -> int32 |
將引數轉換成 32 位元帶正負號的整數。 這是針對所有基本數字類資料型別的直接轉換。 對於字串,會使用 Parse) 搭配 InvariantCulture 設定來轉換輸入。 否則,作業需要在輸入型別上使用適當的靜態轉換方法 |
int64 : ^T -> int64 |
將引數轉換成 64 位元帶正負號的整數。 這是針對所有基本數字類資料型別的直接轉換。 對於字串,會使用 Parse 搭配 InvariantCulture 設定來轉換輸入。 否則,作業需要在輸入型別上使用適當的靜態轉換方法 |
invalidArg : string -> string -> 'T |
擲回 ArgumentException 例外狀況。 |
invalidOp : string -> 'T |
擲回 InvalidOperationException 例外狀況。 |
limitedHash : int -> 'T -> int |
泛型雜湊函式。 這個函式的行為與 hash 相同,不過在達到指定的節點限制時,F# 等位、記錄和 Tuple 型別的預設結構化雜湊會停止。 藉由針對每個型別實作 GetHashCode,即可一個型別接著一個型別地調整函式的準確行為。 |
鎖定 : 'Lock -> (unit -> 'T) -> 'T |
使用輸入值做為鎖定,以互斥區域形式執行函式。 |
log : ^T -> ^T |
指定之數字的自然對數。 |
log10 : ^T -> ^T |
指定之數字以 10 為底數的對數。 |
max : 'T -> 'T -> 'T |
根據泛形比較的最大值。 |
min : 'T -> 'T -> 'T |
根據泛形比較的最小值。 |
nan : float |
相當於 NaN. |
nanf : float32 |
相當於 NaN. |
nativeint : ^T -> nativeint |
將引數轉換成帶正負號的原生整數。 這是針對所有基本數字類資料型別的直接轉換。 否則,作業需要在輸入型別上使用適當的靜態轉換方法 |
not : bool -> bool |
讓邏輯值相反。 |
nullArg : string -> 'T |
擲回 ArgumentNullException 例外狀況。 |
pown : ^T -> int -> ^T |
多載 Power 運算子。 如果 n > 0,則等於 x*...*x (表示 x 出現 n 次) |
raise : Exception -> 'T |
引發例外狀況。 |
ref : 'T -> 'T ref |
建立可變動的參考儲存格。 |
reraise : unit -> 'T |
重新擲回例外狀況。 這應該只有在處理例外狀況時才使用。 |
round : ^T -> ^T |
將指定的數字四捨五入。 |
sbyte : ^T -> sbyte |
將引數轉換成帶正負號的位元組。 這是針對所有基本數字類資料型別的直接轉換。 對於字串,會使用 Parse 搭配 InvariantCulture 設定來轉換輸入。 否則,作業需要在輸入型別上使用適當的靜態轉換方法 |
seq : seq<'T> -> seq<'T> |
使用循序項運算式語法,建置序列。 |
sign : ^T -> int |
所指定數字的正負號。 |
sin : ^T -> ^T |
指定之數字的正弦函數。 |
sinh : ^T -> ^T |
指定之數字的雙曲線正弦函數。 |
sizeof : int |
傳回型別的內部大小 (以位元組為單位)。 例如,sizeof<int> 會傳回 4。 |
snd : 'T1 * 'T2 -> 'T2 |
傳回 Tuple 的第二個項目,snd (a,b) = b |
sqrt : ^T -> ^T |
指定之數字的平方根。 |
stderr : TextWriter |
讀取屬性 Error 的值 |
stdin : TextReader |
讀取屬性 In 的值 |
stdout : TextWriter |
讀取屬性 Out 的值 |
string : ^T -> string |
使用 ToString,將引數轉換成字串。 |
tan : ^T -> ^T |
指定之數字的正切函數。 |
tanh : ^T -> ^T |
指定之數字的雙曲線正切函數。 |
truncate : ^T -> ^T |
多載截斷運算子 |
typedefof : Type |
產生代表型別定義的 Type。 如果輸入型別是泛型型別執行個體化,則傳回與所有這類執行個體化相關聯的泛型型別定義 |
typeof : Type |
產生代表靜態型別的 Type 執行階段。 傳回的值仍會保留靜態型別。 |
uint16 : ^T -> uint16 |
將引數轉換成不帶正負號的 16 位元整數。 這是針對所有基本數字類資料型別的直接轉換。 對於字串,會使用 Parse 搭配 InvariantCulture 設定來轉換輸入。 否則,作業需要在輸入型別上使用適當的靜態轉換方法 |
uint32 : ^T -> uint32 |
將引數轉換成不帶正負號的 32 位元整數。 這是針對所有基本數字類資料型別的直接轉換。 對於字串,會使用 Parse 搭配 InvariantCulture 設定來轉換輸入。 否則,作業需要在輸入型別上使用適當的靜態轉換方法 |
uint64 : ^T -> uint64 |
將引數轉換成不帶正負號的 64 位元整數。 這是針對所有基本數字類資料型別的直接轉換。 對於字串,會使用 Parse 搭配 InvariantCulture 設定來轉換輸入。 否則,作業需要在輸入型別上使用適當的靜態轉換方法 |
unativeint : ^T -> nativeint |
針對所有基本數值型別使用直接轉換,將引數轉換成不帶正負號的原生整數。 否則,作業需要在輸入型別上使用適當的靜態轉換方法 |
unbox : obj -> 'T |
對強型別值進行 Unbox 處理。 這是 box 的反向作業,即 unbox<'T>(box<'T> a) 等於 a。 |
using : 'T -> ('T -> 'U) -> 'U |
在指定的函式完成之後,清理與輸入物件相關聯的資源。 即使是受保護程式碼引發例外狀況,還是會進行清理。 |
現用模式
現用模式 |
描述 |
---|---|
( |Failure|_| ) : exn -> string option |
|
( |KeyValue| ) : KeyValuePair<'Key,'Value> -> 'Key * 'Value |
此現用模式會強制執行 KeyValuePair<TKey, TValue> 型別的值 |
平台
Windows 8 中, Windows 7, Windows Server 2012 上, Windows Server 2008 R2
版本資訊
F# 核心程式庫版本
支援版本:2.0, 4.0,可攜式執行檔 (PE)。