我最近不得不使用c#,我没有多少经验。我一直在寻找自己的难题是,在构建一个类时,状态依赖于在它之前初始化的状态
class foo{
public bar_ {get;}
public dum_ {get;}
public foo (){
bar_ = BuildBar();
dum_ = BuildDum(bar_);
}
}
如果它只是使用已经可以从成员访问的东西,那么BuildDum携带一个参数有点多余。另一方面,我喜欢明确指出函数依赖的依赖
我想我在问:处理这种情况的最佳方法是什么?
答案 0 :(得分:1)
两种方式都很好。 BuildDum
的当前版本可以设为static
,在这种情况下,该方法无法访问任何成员变量,因为无论如何都无法执行此操作:
private static Dum BuildDum(Bar b) {
...
}
如果您BuildDum
直接访问bar_
,您还应该访问_dum
,即它应该是非静态void
:
private void BuildDum() {
...
_dum = ...
}