我是F#的新手.我正在使用VS2008 shell和F#interactive.我尝试使用"System.String.Split"拆分字符串,但后来我得到错误:"拆分不是静态方法"
代码示例:
let Count text =
let words = System.String.Split [' '] text
let nWords = words.Length
(nWords)
Run Code Online (Sandbox Code Playgroud)
如何使用像F#中的split这样的String方法?
F#是否具有指定类型系统或结构类型系统?
我知道OCaml是结构类型的,虽然F#似乎不是这样,这是正确的吗?
我想了解阴影和嵌套函数的机制是如何工作的.例如:
let func y =
let dup y = y + y
let z = dup y
let dup y =
let dup z =
let y = y * z
y
let z = y
y
dup z + z;;
val func : int -> int
> func 3;;
val it : int = 12
Run Code Online (Sandbox Code Playgroud)
有人可以解释这里发生了什么吗
是否可以在F#中实现友元函数和朋友类(如c ++)?
更新:由于f#中没有友元函数/类,而朋友甚至不是未来扩展的保留关键字,我想知道F#中的朋友机制是否有任何问题导致开发人员决定不实现它? (例如在"受保护的"访问修饰符中).
建议1:Brian,签名文件 - 我认为这件事情不正常.如果你有一个闭包(例如A中的lambda表达式,它是一个与A的实例不同的对象)来评估BX,它将无法工作
建议2:Massif(+ Mitya0),InternalsVisibleTo - 我不清楚,你是在第二课中写这个还是将课程暴露给整个集会?