F# 为什么val关键字不能在F中工作#

F# 为什么val关键字不能在F中工作#,f#,F#,为什么以下代码段中的val关键字会导致编译器错误?我需要获取返回值并显示它 open System let CylinderVolume radius length = let pi = 3.14159 length * pi * radius * radius System.Console.WriteLine(CylinderVolume 5.0 10.0) val cylinderVolume : int -> int -> int 您显示的输出不是我得

为什么以下代码段中的val关键字会导致编译器错误?我需要获取返回值并显示它

open System

let CylinderVolume radius length =
    let pi = 3.14159
    length * pi * radius * radius


System.Console.WriteLine(CylinderVolume 5.0 10.0)

val cylinderVolume : int -> int -> int

您显示的输出不是我得到的:

open System
- 
- let CylinderVolume radius length =
-     let pi = 3.14159
-     length * pi * radius * radius
- 
- 
- System.Console.WriteLine(CylinderVolume 5.0 10.0);;
785.3975

val CylinderVolume : float -> float -> float

val-CylinderVolume
位只是报告您定义的
CylinderVolume
对象的类型,结果打印在其上方。

这个问题不是特别清楚,尽管我尝试过回答它。特别是,我假设以
val
开头的行是fsi.exe的输出。但是,这与给定的
CylinderVolume
的定义不匹配,该定义使用
float
而不是
int
如何获取返回结果并将其分配给variable@user1717327-
let vol=CulinderVolume 5.0 10.0
。这是我的问题。定义一个函数,根据高度、宽度和长度计算体积。调用函数并将返回的Result赋值。我在分配返回结果时遇到了麻烦
let vol=…
应该这样做。et volume h w l=hwl let answer=volume 10 20 30 Console.WriteLine(answer)