[转]符号和运算符参考 (F#)
本文转自:http://msdn.microsoft.com/zh-cn/library/dd233228.aspx
本主题包含一个表,其中列出了 F# 语言中使用的符号和运算符。
下表描述了 F# 语言中使用的符号,提供了包含更多信息的主题的链接,还提供了有关某些符号用法的简要说明。 这些符号根据 ASCII 字符集顺序进行了排序。
| 符号或运算符 | 链接 | 描述 | 
|---|---|---|
| ! | 
 | |
| != | 不适用。 | 
 | 
| " | 
 | |
| """ | 分隔原义文本字符串。 与 @"..." 的不同之处在于通过在该字符串,的一个单引号您可以指示引号字符。 | |
| # | 
 | |
| $ | 未提供更多信息。 | 
 | 
| % | 
 | |
| %? | 在右侧是可以为 null 的类型时,计算整数模数。 | |
| & | 
 | |
| && | 
 | |
| &&& | 
 | |
| ' | 
 | |
| ``...`` | 未提供更多信息。 | 
 | 
| ( ) | 
 | |
| (...) | 
 | |
| (*...*) | 
 | |
| (|...|) | 
 | |
| * | 
 | |
| *? | 
 | |
| ** | 
 | |
| + | 
 | |
| +? | 
 | |
| , | 
 | |
| - | 
 | |
| - | 
 | |
| -> | 
 | |
| . | 
 | |
| .. | 
 | |
| .. .. | 
 | |
| .[...] | 
 | |
| / | 
 | |
| /? | 
 | |
| // | 
 | |
| /// | 
 | |
| : | 
 | |
| :: | 
 | |
| := | 
 | |
| :> | 
 | |
| :? | 
 | |
| :?> | 
 | |
| ; | 
 | |
| < | 
 | |
| <? | 在右侧是可以为 null 的类型时,与运算更少。 | |
| << | 
 | |
| <<< | 
 | |
| <- | 
 | |
| <...> | 
 | |
| <> | 
 | |
| <>? | 
 | |
| <= | 
 | |
| <=? | 
 | |
| <| | 
 | |
| <|| | 
 | |
| <||| | 
 
 | |
| <@...@> | 
 | |
| <@@...@@> | 
 | |
| = | 
 | |
| =? | 
 | |
| == | 不适用。 | 
 | 
| > | 
 | |
| >? | 
 | |
| >> | 
 | |
| >>> | 
 | |
| >= | 
 | |
| >=? | 
 | |
| ? | 
 | |
| ? ... <- ... | 未提供更多信息。 | 
 | 
| ?>= , ?>, ?<=, ?<, ?=, ?<>, ?+, ?-, ?*, ?/ | 
 | |
| >=? , >?, <=?, <?, =?, <>?, +?, -?, *?, /? | 
 | |
| ?>=? , ?>?, ?<=?, ?<?, ?=?, ?<>?, ?+?, ?-?, ?*?, ?/? | 
 | |
| @ | 
 | |
| [...] | 
 | |
| [|...|] | 
 | |
| [<...>] | 
 | |
| \ | 
 | |
| ^ | 
 | |
| ^^^ | 
 | |
| _ | 
 | |
| ` | 
 | |
| {...} | 
 | |
| | | 
 | |
| || | 
 | |
| ||| | 
 | |
| |> | 
 | |
| ||> | 
 
 | |
| |||> | 
 
 | |
| ~~ | 
 | |
| ~~~ | 
 | |
| ~- | 
 | |
| ~+ | 
 | 
下表显示 F# 语言中的运算符和其他表达式关键字的优先级顺序(按照从最低优先级到最高优先级的顺序)。 此外,还列出了结合性(如果适用)。
| 运算符 | 结合性 | 
|---|---|
| as | Right | 
| when | Right | 
| | (管道) | Left | 
| ; | Right | 
| let | 不可结合 | 
| function , fun, match, try | 不可结合 | 
| if | 不可结合 | 
| -> | Right | 
| := | Right | 
| , | 不可结合 | 
| or , || | Left | 
| & , && | Left | 
| < op, >op, =, | op, &op | Left | 
| &&& , |||, ^^^, ~~~, <<<, >>> | Left | 
| ^ op | Right | 
| :: | Right | 
| :?> , :? | 不可结合 | 
| - op、+op(二元) | Left | 
| * op, /op, %op | Left | 
| ** op | Right | 
| f x (函数应用程序) | Left | 
| | (模式匹配) | Right | 
| 前缀运算符(+op、-op、%、%%、&、&&、!op、~op) | Left | 
| . | Left | 
| f(x) | Left | 
| f< types > | Left | 
F# 支持自定义运算符重载。 这就意味着您可以定义自己的运算符。 在上表中,op 可以是任何有效的运算符字符序列(可能为空),而不论运算符字符是内置的还是用户定义的。 因此,您可以使用此表来确定为自定义运算符使用什么样的字符序列,以实现所需的优先级级别。 当编译器确定优先级时,将忽略前导 . 字符。
posted on 2014-08-28 11:51 freeliver54 阅读(1707) 评论(0) 收藏 举报
 
                    
                     
                    
                 
                    
                 
                
            
         
 
         浙公网安备 33010602011771号
浙公网安备 33010602011771号