簡體   English   中英

如何在f#中將記錄字段定義為數組?

[英]How to define a record field as an array in f#?

我想創建一個包含8個元素的字節數組類型的記錄字段,但無法找出正確的語法。

我做了類似的事情:

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 } { id = 0; data = Array.zeroCreate 8 }如果您願意 - 數組文字通常更容易閱讀,但如果您創建大數組, zeroCreate可能更有效。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM