📜  F#参考单元

📅  最后修改于: 2021-01-01 14:27:19             🧑  作者: Mango

F#参考单元

参考单元引用存储位置。它允许您创建可变值。 F#默认使用不可变数据结构。

您可以使用ref运算符创建参考单元。它拥有实际价值。

引用单元格可以使用取消引用! (砰)运算符。它使用:=运算符分配新值。

句法:

ref expression

F#参考单元格示例

let refVariable = ref 50
printf "%d" refVariable.Value

输出:

50

F#参考单元格Example2

let refVariable22 = ref 50
printf "%d" refVariable.Value

refVariable22 := 100              // Value has changed because it is mutable.

printf "\n%d" refVariable22.Value  

输出:

50
100

F#参考单元格的值属性和内容字段示例

let refVariable = ref 50

// modifying value by using Value property and <- operator
refVariable.Value <- 101
printf "\n%d" refVariable.Value            

// modifying value by using contents field and <- operator
refVariable.contents <- 102
printf "\n%d" refVariable.contents

输出:

101
102

F#参考单元格与可变变量

引用单元格和可变变量都可以在所有情况下使用,但编译器不允许在lambda表达式,序列表达式等中使用可变变量。在这种情况下,可以使用引用单元格。