Árvore de páginas

Você está vendo a versão antiga da página. Ver a versão atual.

Comparar com o atual Ver Histórico da Página

« Anterior Versão 2 Próxima »

Variáveis Estáticas

Abrangência

Versão 5.07

Versão 5.08

Versão 6.09

Versão 7.10

Versão 8.11

Versões Anteriores


Variáveis estáticas funcionam basicamente como as variáveis locais, mas mantêm seu valor através da execução. Variáveis estáticas devem ser declaradas explicitamente no código com o identificador STATIC.

O escopo das variáveis estáticas depende de onde são declaradas. Se forem declaradas dentro do corpo de uma função ou procedimento, seu escopo será limitado àquela rotina. Se forem declaradas fora do corpo de qualquer rotina, seu escopo é todo o arquivo de programa.

Neste exemplo, a variável nVar é declarada como estática e inicializada com o valor 10:


Function Pai()
Static nVar := 10
.
<comandos>
.
Filha()
.
<mais comandos>
.
Return(.T.)



Quando a função Filha é executada, nVar ainda existe mas não pode ser acessada. Diferente de variáveis declaras como LOCAL ou PRIVATE, nVar continua a existir e mantem seu valor atual quando a execução da função Pai termina. Entretanto, somente pode ser acessada por execuções subseqüêntes da função Pai.



  • Sem rótulos