【发布时间】:2011-02-09 07:09:40
【问题描述】:
只是想知道这是否可能。 我真正想做的是检查并可能修改其中一个参数,然后再将其存储为 val。
或者,我可以使用重载并将默认构造函数设为私有。在这种情况下,我还想将伴随对象中的默认工厂构造函数设为私有,我该怎么做?
非常感谢。
亚当
编辑:好吧,我发现将默认构造函数设为私有也会使默认工厂构造函数私有,所以我有一个解决方案,但我仍然想知道默认构造函数是否可覆盖
【问题讨论】:
-
为什么要这样做?案例类旨在用于定义代数数据类型,因此添加的构造函数会稍微改变调用者的参数。就验证参数而言,可以使用
assert或require在主构造函数中完成。 -
@adam77 将您的初始陈述重新构建为一个问题,“我可以检查并可能修改[案例类参数]吗?”答案是肯定的。我刚刚发布了有关此处相关问题的详细信息:stackoverflow.com/a/25538287/501113