Dot-Net
F# 測量單位如何工作?
有沒有人有機會深入了解F# 度量單位的工作原理?它只是基於類型的詭計,還是隱藏在下面的 CLR 類型可以(可能)從其他 .net 語言中使用?它適用於任何數字單位,還是僅限於浮點值(這是所有範例使用的)?
根據下一篇相關部落格文章的回复,它們是 F# 編譯器中的純靜態機制。所以沒有單位數據的CLR表示。
目前尚不完全清楚它是否適用於非浮點類型,但從類型系統的角度來看,理論上是可能的。
了解這一點的最佳(我認為是官方的)地方是 Andrew Kennedy 的部落格。
以下是(目前)相關文章。
正如我在您的回答者所指的文章中所說,這絕對是您在 C# 中無法做到的事情(儘管我希望您能做到)。