在我的程序中,我将本地构造的变量传递给全局类对象的成员函数。成员函数将把这个变量赋值给一个私有成员并在整个程序中使用它。这种方法有什么缺点吗?将局部变量传递给全局函数
public void function()
{
int a = 0;
globalClassObject.StoreValue(a);
}
在我的程序中,我将本地构造的变量传递给全局类对象的成员函数。成员函数将把这个变量赋值给一个私有成员并在整个程序中使用它。这种方法有什么缺点吗?将局部变量传递给全局函数
public void function()
{
int a = 0;
globalClassObject.StoreValue(a);
}
这很好。问题是如果你将传递给这个变量的引用。在这种情况下,该值被“复制”到该函数内的变量中,因此原始的a
变量未被实际使用。
最大的缺点是如果这个值可以在程序的其他地方改变。如果可以的话,你的程序将成为臭虫滋生的沼泽。如果globalClassObject不可变地存储这个值,那么没有问题。
没问题,为什么我会因此而失望? – Aidan 2011-05-31 09:33:03
我没有看到这个问题。该变量仅用于本地范围,因此这里没有意外的结果。
这里的问题是什么? – Stefan 2011-05-31 09:30:36
@Jason的问题是,如果有这样做的缺点 – 2011-05-31 09:31:05
为什么这会被投票? – logeeks 2011-05-31 10:09:42