Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Cuando se llama a un procedimiento, normalmente se pasan uno o varios argumentos a él. Cada argumento corresponde a un elemento de programación subyacente. Tanto los elementos subyacentes como los propios argumentos pueden ser modificables o no modificables.
Elementos modificables y no modificables
Un elemento de programación puede ser un elemento modificable, que puede tener su valor cambiado o un elemento no modificable, que tiene un valor fijo una vez creado.
En la tabla siguiente se enumeran los elementos de programación modificables y no modificables.
| Elementos modificables | Elementos no modificables |
|---|---|
| Variables locales (declaradas dentro de procedimientos), incluidas las variables de objeto, excepto para solo lectura | Variables, campos y propiedades de solo lectura |
| Campos (variables de miembros de módulos, clases y estructuras), excepto los de solo lectura | Constantes y literales |
| Propiedades, excepto las de solo lectura | Miembros de la enumeración |
| Elementos de matriz | Expresiones (incluso si sus elementos son modificables) |
Argumentos modificables y no modificables
Un argumento modificable es uno con un elemento subyacente modificable. El código de llamada puede almacenar un nuevo valor en cualquier momento y, si pasa el argumento ByRef, el código del procedimiento también puede modificar el elemento subyacente en el código de llamada.
Un argumento no modificable tiene un elemento subyacente no modificable o se pasa ByVal. El procedimiento no puede modificar el elemento subyacente en el código de llamada, aunque sea un elemento modificable. Si es un elemento no modificable, el propio código que realiza la llamada no puede modificarlo.
El procedimiento llamado podría modificar su copia local de un argumento no modificable, pero esa modificación no afecta al elemento subyacente en el código de llamada.
Consulte también
- procedimientos de
- Parámetros y argumentos del procedimiento
- Cómo: Pasar argumentos a un procedimiento
- Pasar argumentos por valor y por referencia
- Diferencias entre pasar un argumento por valor y por referencia
- Cómo: Cambiar el valor de un argumento de procedimiento
- Cómo: Proteger un argumento de procedimiento frente a cambios de valor
- Procedimiento: Forzar un argumento para que pase como un valor
- Pasar argumentos por posición y por nombre
- Tipos de Valor y Tipos de Referencia