私はおそらく新しくF#に言及することから始めるべきであり、これは間違いなく新人質問であることを覚えておいてください。F#関数の入力タイプを定義する/タイプミスマッチを防ぐ
私は今のように2ヶ月間F#をやっていて、私が一般的にF#について不満を感じるのは、間違いです。 「ここには何かがあると予想されていたが、何か他のものが与えられた」
私の先生は、他の言語と違って、F#で自分がどのタイプのものを指しているのかわからないことを覚えています。
私の質問は、関数の入力にどのように型を定義するのですか?
例:
let FoneTwo y x =
System.Math.Sqrt(x^2+y^2)
printfn "%A" (FoneTwo 2.2 3.3)
フロートが期待されるが、文字列を入力していていることをこのエラー。この弦はどこにありますか?関数呼び出しでは、浮動小数点を使って明示的に呼び出します。だから私は何とかyとxを指定する必要があると思うxは浮動小数ですが、どのように?
一般的に私はこの例に答えただけでなく、この問題を把握するための一般的なルールや方法を教えてください。一般的に、これはたくさん起こるからです。
誰かが私を啓発できますか?
'(^)'は、ML互換性のための文字列連結演算子です。あなたは代わりに '(**)'を使いたいとします。 'x ** 2. + y ** 2.'。 – Lee