Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Quando você chama um procedimento, normalmente passa um ou mais argumentos para ele. Cada argumento corresponde a um elemento de programação subjacente. Os elementos subjacentes e os próprios argumentos podem ser modificáveis ou não modificáveis.
Elementos modificáveis e não modificáveis
Um elemento de programação pode ser um elemento modificável, que pode ter seu valor alterado ou um elemento não modificável, que tem um valor fixo depois de criado.
A tabela a seguir lista elementos de programação modificáveis e não modificáveis.
Elementos modificáveis | Elementos não modificáveis |
---|---|
Variáveis locais (declaradas dentro de procedimentos), incluindo variáveis de objeto, exceto somente leitura | Variáveis, campos e propriedades de somente leitura |
Campos (variáveis membro de módulos, classes e estruturas), exceto para somente leitura | Constantes e literais |
Propriedades, exceto as de somente leitura | Membros de enumeração |
Elementos da matriz | Expressões (mesmo que seus elementos sejam modificáveis) |
Argumentos modificáveis e não modificáveis
Um argumento modificável é aquele com um elemento subjacente modificável. O código de chamada pode armazenar um novo valor a qualquer momento e, se você passar o argumento ByRef, o código no procedimento também poderá modificar o elemento subjacente no código de chamada.
Um argumento não modificável tem um elemento subjacente não modificável ou é passado por ByVal. O procedimento não pode modificar o elemento subjacente no código de chamada, mesmo que seja um elemento modificável. Se for um elemento não modificável, o próprio código de chamada não poderá modificá-lo.
O procedimento chamado pode modificar sua cópia local de um argumento não modificável, mas essa modificação não afeta o elemento subjacente no código de chamada.
Consulte também
- Procedimentos
- Parâmetros e Argumentos de Procedimento
- Como passar argumentos para um procedimento
- Passar argumentos por valor e por referência
- Diferenças entre passar um argumento por valor e por referência
- Como alterar o valor de um argumento de procedimento
- Como proteger um argumento de procedimento contra alterações de valor
- Como fazer: forçar um argumento a ser passado por valor
- Passando argumentos por posição e por nome
- Tipos de Valores e Tipos de Referências