Matrices de parámetros

Actualización: noviembre 2007

Normalmente no es posible llamar a un procedimiento con un número de argumentos superior al especificado en la declaración del procedimiento. Si se necesita un número indeterminado de argumentos, puede declararse una matriz de parámetros, que permite que un procedimiento acepte una matriz de valores en un parámetro. No es necesario conocer el número de elementos de la matriz de parámetros en el momento de definir el procedimiento. El tamaño de la matriz se determina individualmente en cada llamada al procedimiento.

Declarar una matriz de parámetros

Utilice la palabra clave ParamArray para denotar una matriz de parámetros en la lista de parámetros. Se aplican las siguientes reglas:

  • Un procedimiento puede definir únicamente una matriz de parámetros, que debe ser el último parámetro en la definición del procedimiento.

  • La matriz de parámetros debe pasarse por valor. Es un hábito de programación recomendado incluir de manera explícita la palabra clave ByVal en la definición del procedimiento.

  • La matriz de parámetros es opcional de forma automática. Su valor predeterminado es una matriz unidimensional vacía del tipo de elemento de la matriz de parámetros.

  • Todos los parámetros que preceden a la matriz de parámetros deben ser obligatorios. La matriz de parámetros debe ser el único parámetro opcional.

Para obtener más información, vea Cómo: Definir un procedimiento con un número indefinido de parámetros.

Llamar a un lista de parámetros

Cuando se llama a un procedimiento que define una matriz de parámetros, se puede proporcionar el argumento de los siguientes modos:

  • Ninguno, es decir, puede omitirse el argumento ParamArray. En este caso, se pasará una matriz vacía al procedimiento. También puede pasarse la palabra clave Nothing (Visual Basic), obteniéndose el mismo efecto.

  • Una lista con un número arbitrario de argumentos, separados por comas. El tipo de los datos de cada argumento debe poder convertirse implícitamente al tipo de elemento ParamArray.

  • Una matriz con el mismo tipo de elemento que la matriz de parámetros.

En todas las clases, el código del procedimiento debe considerar la matriz de parámetros una matriz unidimensional, cuyos elementos deben tener el mismo tipo de datos que ParamArray.

Para obtener más información, vea Cómo: Llamar a un procedimiento que toma un número indefinido de parámetros.

Nota de seguridad:

Si se trabaja con matrices cuyo tamaño es excesivamente grande, existe el riesgo de sobrecargar alguna capacidad interna de la aplicación. Si acepta una matriz de parámetros, debe comprobar el tamaño de la matriz que el código de llamada ha transferido. Tome las medidas necesarias si la matriz es demasiado grande para la aplicación. Para obtener más información, vea Cómo: Determinar el tamaño de una matriz.

Vea también

Conceptos

Procedimientos en Visual Basic

Argumentos y parámetros de procedimiento

Pasar argumentos por valor y por referencia

Pasar argumentos por posición o por nombre

Parámetros opcionales

Sobrecarga de procedimientos

Comprobar tipos en Visual Basic

Referencia

Optional (Visual Basic)

UBound (Función, Visual Basic)

Otros recursos

Matrices en Visual Basic