【发布时间】:2013-09-03 14:15:45
【问题描述】:
F# 可以轻松定义诸如
之类的类型type coords = { X : float; Y : float }
但是如何在不涉及更冗长的类定义语法的情况下为构造函数定义约束/检查参数?例如。如果我希望坐标从 (0,0) 开始或抛出异常。
此外,如果我将定义更改为一个类,我需要实现 Equals() 等所有我不想要的样板代码(以及我在 C# 中试图摆脱的)。
【问题讨论】:
-
这是另一个问题的副本。投票结束。
标签: constructor f# record