首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

在C#中怎么定义一个数组的全局变量

2011-12-22 
在C#中如何定义一个数组的全局变量!我曾经试过用一个静态数组变量来试图定义一个全局的变量,但是这样做会

在C#中如何定义一个数组的全局变量!
我曾经试过用一个静态数组变量来试图定义一个全局的变量,但是这样做会破坏了类的封装性,所以我定义一个为属性,它类型为数组,但是却怎样也不能得到我所要的结果.
代码如下:
    在同个命令空间中我定义了二个类,分别为Array1.cs

      public   class   Array1
        {
                private     static   int[]   StaticVariables;
                public   int[]   Proarray
                {
                        get
                        {
                                return   StaticVariables;
                        }
                        set
                        {

                                /*
                                  *   或者用这用方法
                                  *   int[]   StaticVariables   =   new   int[value.Length];
                                      value.CopyTo   (StaticVariables   ,0);
                                */
                                int[]   StaticVariables   =   (int[])value.Clone();

                        }
                }
        }

  与另外一个类Form2.cs

public   class   Form2   :   Form
        {
   
                private   void   button4_Click(object   sender,   EventArgs   e)
                {
                        int[]   Orgions   =   new   int[4]   {   9,   8,   7,   6   };
                        Array1   arr   =   new   Array1();
                        arr.Proarray   =   Orgions;
                        MessageBox.Show(arr.Proarray.Length.ToString   );
                       
                }

        }
当我触发   button4_Click事件后,
当我运行到     MessageBox.Show(arr.Proarray.Length.ToString   );   这句时,提示
arr.Proarray   为空?为什么?

------解决方案--------------------


sorry,修正一下,
n为数组大小。

public class Array1
{
private static int[] StaticVariables = new int[n];
public int[] Proarray
{
get
{
return StaticVariables;
}
set
{

/*
* 或者用这用方法
* int[] StaticVariables = new int[value.Length];
value.CopyTo (StaticVariables ,0);
*/
int[] StaticVariables = (int[])value.Clone();

}
}
}

热点排行