Arrays 如何将记录字段定义为f#中的数组?
我想创建一个字节数组类型的记录字段,包含8个元素,但无法找到正确的语法 我做了这样的事情:Arrays 如何将记录字段定义为f#中的数组?,arrays,f#,record,Arrays,F#,Record,我想创建一个字节数组类型的记录字段,包含8个元素,但无法找到正确的语法 我做了这样的事情: let dataRecord = { id : int data : byte array } let dataValues : byte array = Array.zeroCreate 8 let myArray = { id = 0; data = dataValues } 可以在记录定义中完成吗?怎么做 我上面的例子似乎有效,但我不知道它是安全的还是最好或最正确的方法。您当
let dataRecord = {
id : int
data : byte array
}
let dataValues : byte array = Array.zeroCreate 8
let myArray = { id = 0; data = dataValues }
可以在记录定义中完成吗?怎么做
我上面的例子似乎有效,但我不知道它是安全的还是最好或最正确的方法。您当前所做的并没有错(除了您的类型定义使用的是
let
而不是type
),所以我不完全清楚您的要求。也许是这样的
type dataRecord = {
id : int
data : byte array
}
let myRecord = { id = 0; data = [| for i in 1 .. 8 -> 0uy |] }
如果愿意,您也可以只使用{id=0;data=Array.zeroCreate 8}
——数组文字通常更容易阅读,但是如果您创建大数组,则zeroCreate
可能更有效。我在代码中纠正了“let”这个错误,但在简化此示例时,我弄错了。:-)谢谢你的帮助!