Escopo de variáveis
Quando usamos variáveis de memória , constantes e procedimentos dentro do seu aplicativo VB .NET podemos definir o escopo ou visibilidade deles na sua aplicação.
No VB . NET podemos ter quatro tipo de visibilidade :
Escopo a nível de bloco de código
Ao declarar uma variável dentro de um bloco de código ( for/next , if/then/else ,Select/case , Do/While) a variável será visível somente dentro do bloco de código na qual foi declarada. Abaixo temos um exemplo de código que mostra isto.
Escopo a nível de Procedure
Uma variável declarada dentro de um procedimento somente é visível dentro do procedimento. Somente o procedimento que contém a variável declarada pode usá-la. Estas variáveis são conhecidas como locais ou estáticas. Você pode declará-las usando a declaração Dim com ou sem a palavra chave Static.
Todos os elementos locais , mesmo se eles forem variáveis estáticas , são privados ao procedimento no qual eles foram declarados . Não podemos declarar um elemento usando a palavra chave Public dentro de um procedimento.
Sub rotina1() Dim varTeste As Integer varTeste = 200 rotina2() MsgBox("Valor de VarTeste = " & varTeste) End Sub Sub rotina2() Dim varTeste As Integer varTeste = 20000 MsgBox("Valor de VarTeste = " & varTeste) End Sub |
A variável varTeste criada no procedimento rotina1() é local e somente será
visível dentro de rotina1(). - Ao executar o projeto o procedimento rotina1() será executado e o valor 200 será atribuído a variável varTeste (varTeste=200) - A rotina2() será chamada e nela uma variável com o mesmo nome é declarada e o valor 2000 é atribuído a ela. - O valor da varTeste será exibido em uma caixa de mensagem com o valor igual a 20000 - Ao retornar a execução para o procedimento rotina1() o valor da variável varTeste é exibido com o valor 200 Isto mostra que a variável varTeste tem o seu valor visível somente em cada rotina que na qual foi declarada , ou seja , ela é uma variável local. |
Escopo a nível de Módulo
Ao declarar variáveis e constantes a nível de módulo elas serão visíveis por todos os procedimentos dentro do seu código. Para fazer isto você deve declarar a variável fora de qualquer procedimento que exista no projeto. Geralmente isto é feito depois da linha - Windows Form Designer generated code:
Nota : por conveniência , o termo nível de módulo se aplica a módulos, classes e estrutura . Podemos declarar elementos neste nível colocando a declaração fora de qualquer procedimento ou bloco dentro do módulo , classe ou estrutura.
Visibilidade a nível de projeto (Namespace escopo)
Se você declarar uma variável a nível de módulo usando a palavra-chave Friend ou Public ela torna-se disponível para todos os procedimentos do seu Namespace. Abaixo a variável strTeste pode ser usada por qualquer procedimento do Namespace. Ex: Public strTeste As String
Terminei mais um artigo VB.NET , até o próximo ...
José Carlos Macoratti