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 é limitado ao programa a qual foi declarada, independente do ponto onde a variável foi declarada.
Exemplo
Os dois trechos de código abaixo tem o mesmo resultado:
Declaração no corpo da função
user function vStatic()
Pai()
return
static function Pai()
static nVar := 10 // Declaração no corpo da função
conOut("Pai")
conOut(nVar)
Filha()
return(.T.)
static function Filha()
conOut("Filha")
conOut(nVar)
return
Declaração fora do escopo de função
static nVar := 10 // Declaração fora do escopo de função
user function vStatic()
Pai()
return
static function Pai()
conOut("Pai")
conOut(nVar)
Filha()
return(.T.)
static function Filha()
conOut("Filha")
conOut(nVar)
return
Import HTML Content
Visão Geral
Conteúdo das Ferramentas