• 在Visual Studio 2008中编译F#程序.


    在Visual Studio 2008中,编译F#程序时,会出现警告(但不是错误),但是由于这个警告却使你的程序无法运行,不过大多数据这些警告都会有提示,提示你用.NET里的函数代替F#中的某些函数,但是这些.NET中的函数又不能像在C#中那样使用.

    例如:

    #light

    let one = ["one "]
    let two = "two " :: one
    let three = "three " :: two
    let rightWayRound = List.rev three
    let printList l =
    List.iter print_string l
    print_newline()
    let main() =
    printList one
    printList two
    printList three
    printList rightWayRound
    main()

    上面的程序在Visual Studio 2008编译时,会出现警告,提示List.iter print_string l一行中print_string要用Console.Write()代替,但是如果直接把print_string直接用Console.Write()或Console.Write也还是不行.

    那么到底如果使用Console.Write()代替print_string在Viusal Studio 2008中通过编译呢,

    注意Console.Wirite有多个重载版本,重载时要指明版本,这要用到匿名函数并对参数进行注解

    所以上面的List.iter print_string l

    可改写为List.iter (fun (x:string) -> Console.Write(x)) l

    这样就可以通过编译了.

  • 相关阅读:
    ps一寸照片
    作用域链词法分析
    ajax加上随机数可以强制刷新网页
    ajaxStar,ajaxStop开始时候加载图片,加载完成之后去掉图片
    布尔变量 转换
    将2016-11-02转化成二零一六年十一月二日
    日期函数
    js数据类型
    编写页面分析
    小三角
  • 原文地址:https://www.cnblogs.com/mcjtcnblog/p/1385735.html
Copyright © 2020-2023  润新知