Cómo: Asignar una matriz a otra
Actualización: noviembre 2007
Puesto que las matrices son objetos, puede utilizarlas en instrucciones de asignación como cualquier otro tipo de objeto. Una variable de matriz contiene un puntero a los datos que constituyen los elementos de matriz, y a la información de rango y longitud; una asignación copia sólo este puntero.
Para asignar una matriz a otra
Asegúrese de que las dos matrices tienen el mismo rango (número de dimensiones) y tipos de datos de elementos compatibles.
Utilice una instrucción de asignación estándar para asignar la matriz de origen a la matriz de destino. No agregue paréntesis detrás del nombre de las matrices.
Dim formArray() As System.Windows.Forms.Form Dim controlArray() As System.Windows.Forms.Control controlArray = formArray
En la asignación de una matriz a otra, se aplican las siguientes reglas:
Rangos iguales. El rango (número de dimensiones) de la matriz de destino debe coincidir con el de la matriz de origen.
Siempre que los rangos de las dos matrices sean iguales, no es necesario que las dimensiones sean iguales. El número de elementos de una dimensión dada puede cambiar durante la asignación.
Tipos de elementos. Ambas matrices deben tener elementos de tipo de referencia o bien ambas matrices deben tener elementos de tipo de valor. Para obtener más información, consulte Tipos de valores y tipos de referencia.
Si ambas matrices tienen elementos de tipo valor, los tipos de datos deben coincidir exactamente. La única excepción a esto es que puede asignar una matriz de elementos Enum a una matriz del tipo base de esta Enum.
Si ambas matrices tienen elementos de tipo de referencia, el tipo de elemento de origen debe derivar del tipo de elemento de destino. Cuando éste es el caso, las dos matrices tienen la misma relación de herencia que sus elementos. Esto se denomina covarianza de matriz.
El compilador notifica un error si las reglas anteriores no se cumplen, por ejemplo, si los tipos de datos no son compatibles o si los rangos no son iguales. Se puede incluir control de errores en el código para comprobar si las matrices son compatibles antes de intentar realizar la asignación. También puede utilizar la palabra clave TryCast si desea evitar que se produzca una excepción.
Vea también
Tareas
Cómo: Declarar una variable de matriz
Cómo: Inicializar una variable de matriz
Cómo: Cambiar el tamaño de una matriz
Cómo: Cambiar una matriz por otra distinta
Cómo: Pasar una matriz a un procedimiento o una propiedad
Cómo: Devolver una matriz desde un procedimiento o una propiedad
Solucionar problemas de matrices
Conceptos
Referencia
Instrucción Enum (Visual Basic)