我们可以用Array.CreateInstance(参数1,10)创建数组。那我们可以用该方法创建一个未知类型的数组吧,比如
public void CreateArr(数组类型参数) {
    Array arrMy=Array.CreateInstance(参数1,10);
    //这些参数怎么写?
}
public void test(){
    //假设我们要创建一个int数组,这里该怎么写?
    CreateArr(?);
}

解决方案 »

  1.   

    int[] d=new int[10];
    这样不得吗
      

  2.   


            public static Array CreateArr(Type type,Int32 length) 
            {
                Array arrMy=Array.CreateInstance(type , length);
                return arrMy;
            }
            static void Main(string[] args)
            {
                Int32[] arr = (Int32[])Program.CreateArr(typeof(Int32), 10);        }
      

  3.   

    你觉得我会连这个都不知道吗?兄弟显然是没理解我的意思,我说创建一个int类型的数组只是举了个例子!你怎么知道我一定是创建int的而不是其它类型的呢?我的意思是想写一个通用的方法,因为到底是什么类型的数组是要运行时才会知道的,即以参数的形式传递至方法中。
      

  4.   

     Array.CreateInstance(typeof(int), 10);