问题描述
- C#中,怎么将一个窗体中已经改变的全局变量同步到另一个窗体中,将其赋值给局部变量
-
在全局变量定义的窗体中我定义了GlobalVariable.dianshu2和GlobalVariable.chishu2变量,然后在A窗体中给这两个全局变量都赋了值,在B窗体的一开始写了 static int dianshu= GlobalVariable.dianshu2; static int chishu= GlobalVariable.chishu2; double[,] m_X_ChiXiangCeLiangWeiZhi = new double[chishu,dianshu]; double[,] m_X_ChiXiangXiangDuiWeiZhi = new double[chishu,dianshu]; 我用了断点查找错误,发现GlobalVariable.dianshu2=4和GlobalVariable.chishu2=5; 但为什么它们的值是0呢
解决方案
B当中没有必要再用static修饰了。比如:
class Program
{
static void Main(string[] args)
{
A a = new A();
B b = new B();
Console.Read();
}
}
class G
{
public static int V1 = 99;
}
class A
{
public A()
{
G.V1 +=10;
}
}
class B
{
public B()
{
Console.WriteLine(G.V1);
}
}
打印的结果也是109啊。
时间: 2024-08-22 14:26:29