将C#代码转换为F#
我只是一个编程初学者,我希望将一些代码从C#转换为F# 我遇到了以下代码:将C#代码转换为F#,c#,f#,C#,F#,我只是一个编程初学者,我希望将一些代码从C#转换为F# 我遇到了以下代码: float[] v1=new float[10]; ... //Enqueue the Execute command. Queue.Execute(kernelVecSum, null, **new long[] { v1.Length }**, null, null); 我之前问过如何转换v1对象, 我想我知道怎么做, 但是我如何使用函数调用,特别是函数参数的newlong[]{v1.Length}部分,ne
float[] v1=new float[10];
...
//Enqueue the Execute command.
Queue.Execute(kernelVecSum, null, **new long[] { v1.Length }**, null, null);
我之前问过如何转换v1
对象,
我想我知道怎么做,
但是我如何使用函数调用,特别是函数参数的newlong[]{v1.Length}
部分,newlong[]{v1.Length}
意味着什么
我已经创建了v1像这样let v1=[| for I in 1.0..10.0->2.0*I |]
对吗?
或者我应该像这样使用v1让v1=ref[|对于1.0..10.0->2.0*i |]
Queue.Execute(kernelVecSum, null, [| int64 (v1.Length) |], null, null)
这其实更像是一个C#问题。。。你可以给它贴上这样的标签
在C中#
创建一个新的long
s数组,该数组包含一个值为v1.Length
的元素。在F#中,它将是例如
[| int64 v1.Length |]
(无论如何,不,您不希望F代码中的
ref
,而且您仍然没有按照建议更正数据类型。)创建一个v1.Length
元素数组,所有元素都初始化为零,这不是C代码所做的。非常感谢大家,答案是有效的,并帮助我推进代码移植非常感谢各位,答案是有效的,并帮助我推进代码移植
[| int64 v1.Length |]