【发布时间】:2011-02-03 16:13:47
【问题描述】:
我只是想知道是否有人可以向我解释如何将引用单元格传递给非类成员的函数。我一直在关注msdn页面msdn reference cells
我有以下代码:
let myint = ref 32
let mutable myint2 = 23
type addone() =
member t.myadd1func (x:int byref) =
x <- x + 1
let myadd1func (x:int byref) =
x <- x + 1
let adder = new addone()
adder.myadd1func myint
// myadd1func myint <---- this line does not compile
myadd1func &myint2 // <----- this line does though
printfn "%d" !myint
printfn "%d" myint2
我的问题是......我对类上的“Myadd1func”方法的调用与在它之后定义的“myadd1func”函数之间的根本区别是什么?
在我写这篇文章的时候,我猜这个函数不喜欢将 .net 对象引用传递给它,因为这可能会破坏与其他 IL 组件的兼容性??我不介意使用可变值,我只是想了解这些东西。
谢谢
【问题讨论】:
标签: f#