CreateInstance Método (Type, Int32)
Este artículo se tradujo automáticamente. Para ver el artículo en inglés, active la casilla Inglés. Además, puede mostrar el texto en inglés en una ventana emergente si mueve el puntero del mouse sobre el texto.
Traducción
Inglés

Array.CreateInstance (Método) (Type, Int32)

 

Crea una matriz Array unidimensional de la longitud y el tipo Type especificados, con una indización de base cero.

Espacio de nombres:   System
Ensamblado:  mscorlib (en mscorlib.dll)

public static Array CreateInstance(
	Type elementType,
	int length
)

Parámetros

elementType

Type de la matriz Array que se va a crear.

length

Tamaño de la matriz Array que se va a crear.

Valor devuelto

Type: System.Array

Nueva matriz Array unidimensional de la longitud y el tipo Type especificados, utilizando una indización de base cero.

Exception Condition
ArgumentNullException

El valor de elementType es null.

ArgumentException

elementType no es un Type válido.

NotSupportedException

No se admite elementType.Por ejemplo, no se admite Void.

-o-

elementType es un tipo genérico abierto.

ArgumentOutOfRangeException

length es menor que cero.

A diferencia de la mayoría de las clases Array proporciona el CreateInstance método, en lugar de constructores públicos, para permitir el acceso en tiempo de enlace.

Elementos de tipo de referencia se inicializan en null.Elementos de tipo de valor se inicializan en cero.

Este método es una E/s (n) operación, donde n es length.

En el ejemplo de código siguiente se muestra cómo crear e inicializar un unidimensional Array.

using System;
public class SamplesArray  {

   public static void Main()  {

      // Creates and initializes a one-dimensional Array of type Int32.
      Array my1DArray=Array.CreateInstance( typeof(Int32), 5 );
      for ( int i = my1DArray.GetLowerBound(0); i <= my1DArray.GetUpperBound(0); i++ )
         my1DArray.SetValue( i+1, i );

      // Displays the values of the Array.
      Console.WriteLine( "The one-dimensional Array contains the following values:" );
      PrintValues( my1DArray );
   }


   public static void PrintValues( Array myArr )  {
      System.Collections.IEnumerator myEnumerator = myArr.GetEnumerator();
      int i = 0;
      int cols = myArr.GetLength( myArr.Rank - 1 );
      while ( myEnumerator.MoveNext() )  {
         if ( i < cols )  {
            i++;
         } else  {
            Console.WriteLine();
            i = 1;
         }
         Console.Write( "\t{0}", myEnumerator.Current );
      }
      Console.WriteLine();
   }
}
/*
This code produces the following output.

The one-dimensional Array contains the following values:
    1    2    3    4    5
*/

Universal Windows Platform
Disponible desde 10
.NET Framework
Disponible desde 1.1
Portable Class Library
Compatible con: portable .NET platforms
Silverlight
Disponible desde 2.0
Windows Phone Silverlight
Disponible desde 7.0
Volver al principio
Mostrar:
© 2016 Microsoft