【发布时间】:2013-04-19 17:21:33
【问题描述】:
我的问题,缩小到一个简单的解释,如下: 我有一门课需要处理一个可能会发生变化的数字(不改变它)。这个数字不一定来自另一个班级,它可以是任何东西。 但是我只想将它“给”一次类,而不是不断地调用更新方法或必须创建一个包装器(再次,正如我所说,这应该适用于任何类型的数字并且必须包装一切都有点不切实际)。
这里有一些代码,希望对你有帮助:
public class SimpleExample
{
int value;
public SimpleExample(int variableOfWhichINeedAReference)
{
//Of course this won't work, but I'll keep it simple.
value = variableOfWhichINeedAReference;
}
public void DisplayValue()
{
print(value);
}
}
public class RandomClass
{
int myValue = 10;
SimpleExample s = new SimpleExample(myValue);
public void WorkWithValue()
{
myValue++;
}
public void Display()
{
print(foo);
print(bar);
s.DisplayValue();
}
}
现在,问题似乎很明显:如果我实例化一个 SimpleExample 并给它一个变量作为参数,它将获得它的值而不是对它的引用。 有没有一种足够简单的方法可以避免我创建包装器?谢谢。
【问题讨论】:
-
在 SimpleExample 构造函数参数列表中使用
ref修饰符? -
简而言之,只需创建一个包装器。 stackoverflow.com/questions/2980463/…