登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

秒大刀 博客

好好学习 天天向上

 
 
 

日志

 
 
 
 

F# 学习笔记  

2013-04-08 09:42:25|  分类: F# |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
  1. You can send text to F# Interactive by selecting the text and pressing Alt+Enter in VS.
  2. You can't change the immediate value of locals after they've been initialized unless the local is explicitly marked as mutable.
  3. We recommend that you use four-space indentation for F# code. Tab characters can't be used, and the F# tools give an error if they're encountered.
  4. 列表(List):
    1. [ 0; 1; 2 ], [ 0 .. 99 ] // 上下限都包括,若上限小于下限结果为[]
    2. [ for i in 0 .. 99 -> (i, i*i) ]
    3. [ for i in 0 .. 99 do yield i ]
    4. 列表元素追加: 52 :: list :: 53,列表追加 list @ [52]
    5. 列表特别适合于递归编程技术
  5. 数组(Array):
    1. [| 0; 1; 2 |], [| 0 .. 99 |]
    2. [| for i in 0 .. 99 -> (i, i*i) |]
    3. [| for i in 0 .. 99 do yield i |]
    4. 数组切片: array.[1..2], 前后分别表示截止下标(包括)
  6. 序列(IEnumerable<'T>):
    1. seq {yield 0; yield 1; yield2}, seq {0 .. 99}
    2. seq {for i in 0 .. 99 -> }
    3. seq {for i in 0 .. 99 do yield i} (i, i*i)
  7. 元组:
    1. (a, b)
  8. 符号:
    1. 逻辑反用not
    2. 逻辑等于用=,不等于用<>
    3. 赋值<-, 仅适用于mutable
    4. 原意字符串@"str"或三引号"""str"""
    5. **幂运算符
    6. [<...>] Attribute
    7. >>和<<用于进行函数组合
  9. 对一般输出使用%A来输出: printfn "%A" data
  10. 使用 yield! 返回子序列的每个元素,类似于IEnumerable.SelectMany
  11. 递归函数前面需要有rec关键字
  12. d'是合法的标识符
  13. _是匿名无视参数
  14. obj表示Object类型
  15. :? type可用于动态类型识别:math x with | :? int -> ...
  16. failwith可用来报错
  17. printf不换行打印,printfn换行打印
  18. 块注释(* ... *),行注释// ...,/// ... 将作为xml文档注视
  19. `...`为标识符转义,空白之外的任何符号都可作为标识符
  20. 源文件需要utf-8编码
  21. 字节数组:'ascii'B, "ascii"B
  22. 将项目中的fsx源码文件属性设置为Compile后才可参加编译
  23. 文件顺序很重要,编译器将按顺序处理F#项目中的文件
  24. 源码文件类型:使用 Visual Studio 编写 F# 程序
    Image(10)
    1. F# 源文件 (.fs):用于 F# 代码
    2. F# 脚本文件 (.fsx):用于包含 F# 中的非正式测试代码,而无需向应用程序添加此测试代码,也无需为此测试代码创建单独的项目。 默认情况下,脚本文件不会包含在某个项目的生成中,即使它们是该项目的一部分
    3. F# 签名文件 (.fsi):用于指定 F# 实现文件中模块和类型的公共签名
    4. fs文件会有更好的IntelliSense,fsx文件该功能受限
  25. do 绑定可用于在不定义函数或值的情况下执行代码
  26. 可用[<EntryPoint>]显式指定入口点
  27. unit表示“空”,null和void表示其他意思
  28. 函数 fst 和 snd 分别返回元组的第一个和第二个元素,没有可返回三重元组的第三个元素的内置函数
  29. 空括号( )用来表示uint类型值
  评论这张
 
阅读(1321)| 评论(0)

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018