使用交换方式编译首个F#程序

介绍

在这篇文章中我们将使用 交换模式编译第一个 F# 程序。关于 F# 已经谈论了很就了,这里只想通过使用 F# 交换模式编译第一个程序。

下载并安装 F#

这篇文章使用 F# 编译器的版本为 1.9.2.9 ,你可以从 http://research.microsoft.com/research/downloads/details/52ba6040-6998-4de2-bfc6-f7a0f40c71e2/details.aspx 下载。

可以从 http://research.microsoft.com/fsharp/release.aspx 下载最新版本。你首先必须安 装 .NET 2.0 或更高版本在安装 F# 。一旦你安装了 F# 在你的程序菜单中会如图显示“ F# Interactive Console ”。

使用交换方式编译首个F程序 - 夜晚回家 - 夜晚回家

: - F# Interactive console

这是学习 F# 必须的。让我们开始吧。

F# 执行模式类型

F# 有两种执行模式:

  • 完全编译成 .NET 代码(使用“ C:/Program Files/FSharp-1.9.2.9/bidn ”下的 fsc.exe )。
  • 另一种是交换模式(使用“ C:/Program Files/FSharp-1.9.2.9/bidn ”下的 fsi.exe )。

写第一个程序

因此,让我们开始尝试使 用 F# 交换模 式编写第一个程序。一段时间以来我们将使用 F# 交换模式,因此我们要理解一些概念。因此,点击微软研究所的一个 F# 交换式控制台应用程序。你这样做了会 看见一个如下图“ F# Interactive Console ”的屏幕。图中箭头显示的位置用来输入 F# 命令。所有 F# 命令以“ ;; ”(双分号)结束;

使用交换方式编译首个F程序 - 夜晚回家 - 夜晚回家

: - F# Interactive console.

让我们输入我第一个程 序。下图演示一个简单的程序设置字符串的值并显示在屏幕上。我们对命令进行编号,通过编号让我们理解每个命令。

使用交换方式编译首个F程序 - 夜晚回家 - 夜晚回家

: - 你的第一个程序

1 2 – let ”关键字绑定标识符(在这个例子中是“ x ”)具有值“ Shiv ”。命令以“ ;; ”结束,输入回车后将看到“ val x : string ”。这个信息是 F# 编译器提供的,我们可以看到声明了一 个变量“ x ” 是 string 类 型。这是编译器评估数据类型。你可能注意到在 C# VB.NET 中需要定义变量的数据类型。下图“比较”显示“ let ”关键字和 C# 的匹配。“ let ”在 F# 是声明关键字。

使用交换方式编译首个F程序 - 夜晚回家 - 夜晚回家

: - 比较

3 4 – 这个命令我们寻求 F# 编译器关于变量“ x ”的信息。在第 4 行我们可以看见编译器的回答“ val it : string = "Shiv" ,意味着 "x" 是一个字符串类型值为 "Shiv" ”。

5 – 这里我们使用 System.Console.WriteLine 显示变量的值。需要注意的是“ System ”是 .NET 的命名空间。在这一行我们可以说 F# 可以无缝方式使用 .NET 中的功能。

使用交换方式编译首个F程序 - 夜晚回家 - 夜晚回家

: - F# .NET

6 – 我们可以看到 F# 编译器显示“ Shiv ”作为回应。

"Let" 声明语法

F# 中的“ Let ”关键字允许声明变量和方法。下图“声明变量”显示如何声明一个变量。一个重要点需要注意的是我 们不需要定义数据类型。 F# 依靠值确定声明的是字符串或整型。比如,可能看到我们给值“ 2 F# 食物数据类型为整型,当我们给字符串值“ shiv ”它确定数据类型为字符串。

使用交换方式编译首个F程序 - 夜晚回家 - 夜晚回家

: - 声明变量

注意:这个语法和通常的程序语法是有些不同的。因此学习 F# 最重要的一件事情是要意识到这是一门全新的语言。如果你尝试和以前的 C# VB.NET 的风格联系起来,你可能会失望。所 以,保持你头脑的清醒,接收新的风格。

方法也是使用“ let ”关键字类定义的。下图“比较 F# c# 方法声明”显示 F# 方法声明和 C# 方法声明的比较。例如,我们声明一 个叫作“ MyMethodIncrement ”的方法用来接收一个数字参数并在方法中将该数自增。在 F# 中方法体接在方法名后面。不像 C# 有花括号。我们使用 F# 中的方法的变量,作为输入参数。

使用交换方式编译首个F程序 - 夜晚回家 - 夜晚回家

: - 比较 F# C# 的方法声明

现在让我们运行这个方法 看看他是如何工作的。图“声明方法”显示声明一个方法并调用它。理解下图标号的特点。

1 – 声明一个叫“ MyMethodIncrement ”方法,方法逻辑将值自增。

2 – F# 中声明方法的妙处是通过算术计算声明一个方法,并返回一个整型值。

3 4 – 在此调用方法并给值 2 递增后显示 3 。我们再次调用给值 3 递增后显示 4.

使用交换方式编译首个F程序 - 夜晚回家 - 夜晚回家

: - 声明方法

注意:如果你看到上面 F# 声明方法的妙处,通过看到算术计算定 义一个方法返回一个整型。然而 C# 需要严格的定义告诉我们的函数将有值返回。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

夜晚回家

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值