C# - 传递给内部方法的成员变量?

时间:2010-12-02 04:28:35

标签: c# design-patterns

当一个类有内部变量时,是应该在内部传递给方法,还是该方法应该“知道”它?

例如

int _someid;

private void MyFunction(int ID)
{ use ID ... }

private void MyFunction()
{ use _someid ... }

4 个答案:

答案 0 :(得分:2)

不,你应该使用第二个例子。

如果此方法仅用于成员变量,则第二个示例是正确的。

如果你的意图是将这个方法与其他传入的值一起使用,比如说类中的其他方法,或者某些外部调用,那么第一个选项就可以了。

答案 1 :(得分:2)

该方法应该'知道'它。这是首先拥有字段的重要部分。

答案 2 :(得分:0)

嗯,这完全取决于我猜。除了_someId作为参数之外,你有没有想用这个方法调用这个方法?如果是这样,请使用第一个示例。如果没有,请使用第二个。

答案 3 :(得分:0)

成员变量的范围限定为该类。所以成员函数'知道'它。因此,假设您的成员函数不是静态的,那么您的第二个示例是正确的。