【发布时间】:2014-10-31 05:00:17
【问题描述】:
我是 F# 的新手。我在胡闹,发现了一些有趣的东西,我希望有人能启发我了解幕后发生的事情。
所以我做了函数:let my_func (x, y) = x + y。
然后我用参数1 和2 调用函数,给我3。这是我期望发生的,但是当我将两个字符串传递给my_func 时,即使+ 是带有字符串的有效运算符,我也会遇到错误。我重新运行了我的代码,但这次只用"cat" 和" dog" 调用my_func,这给了我"cat dog"。然后我尝试将1 和2 传递回my_func,却发现my_func 不再接受整数。
为什么my_func 会这样?
let my_func (x, y) = x + ymy_func (1, 2) // produces => 3 my_func ("cat", " dog") // Error
重新运行程序...
let my_func (x, y) = x + ymy_func ("cat", " dog") // produces => "cat dog"my_func (1, 2) // Error
【问题讨论】:
标签: f#