2013-03-08 70 views
0

为什么val关键字在下面的代码片段中导致编译器错误?我需要得到返回值并显示它。为什么val关键字不能在F#中工作

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 
+0

这个问题不是特别清楚,虽然我试图回答它。特别是,我假设以'val'开头的行是fsi.exe的输出。然而,这与'CylinderVolume'的定义不匹配,因为它使用'float'而不是'int' – 2013-03-08 05:04:36

回答

1

你显示什么作为输出是不是我所得到的:

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对象的类型,结果被它上面印。

+0

如何获得返回结果并将其分配给变量 – user1717327 2013-03-09 06:02:07

+1

@ user1717327 - 'let vol = CulinderVolume 5.0 10.0'。但是你真的不清楚你想要做什么。 – 2013-03-09 06:06:42

+0

这是我的问题根据高度宽度和长度定义一个函数来计算体积。调用该函数并将返回的resut赋值给一个值。即时通讯麻烦分配返回结果 – user1717327 2013-03-09 06:23:53

相关问题