RESTORE
 Carrega variáveis de um arquivo de memória (.mem)
------------------------------------------------------------------------------

 Sintaxe

     RESTORE FROM <xcArquivoMem> [ADDITIVE]

 Argumentos

     <xcArquivoMem> é o arquivo de memória (.mem) a ser carregado do
     disco.  Se nao for especificada extensao, é assumida (.mem).  O nome do
     arquivo pode ser especificado literalmente ou por expressao caractere
     entre parênteses.

     ADDITIVE adiciona as variáveis carregadas do arquivo de memória ao
     conjunto de variáveis de memória existente.

 Descriçao

     O comando RESTORE recria variáveis de memória previamente gravadas num
     arquivo de memória (.mem) e inicializa-as com seus valores anteriores.
     No Clipper, somente as variáveis de memória de tipo pública e privada
     podem ser gravadas e, portanto, recuperadas.  A abrangência da variável
     nao é gravada juntamente com ela, mas sim estabelecida quando a mesma é
     recuperada.  Variáveis dos tipos vetor e local nao podem ser gravadas,
     nem recuperadas.

     Quando variáveis de memória sao recuperadas, as mesmas sao recriadas
     como do tipo privada com a abrangência definida pela rotina corrente, a
     nao ser que elas já existam como do tipo pública e a cláusula ADDITIVE
     esteja especificada.  Caso esta cláusula nao esteja especificada, todas
     as variáveis de tipo pública e privada sao liberadas antes que o
     arquivo de memória seja carregado.  Se a cláusula ADDITIVE estiver
     especificada, variáveis dos tipos pública e privada que têm os mesmos
     nomes sao sobre-escritas, a nao ser que estejam escondidas com
     PRIVATE.

     Variáveis dos tipos local e estática nao sao afetadas pelo comando
     RESTORE.  Caso uma variável de um desses tipos tenha sido declarada no
     procedimento corrente ou em funçao definida por usuário, e uma variável
     com o mesmo nome é recuperada, somente a variável de tipo local ou
     estática será visível, a nao ser que a variável recuperada estiver
     precedida de alias MEMVAR.

 Exemplos

     O exemplo seguinte demonstra uma aplicaçao típica dos comandos SAVE e
     RESTORE.  Aqui, variáveis de memória que contêm telas sao gravadas e
     recuperadas de arquivos de memória:

     // Cria e usa um pseudo-vetor de telas
     SAVE SCREEN TO scr_1
     SAVE ALL LIKE scr_* TO Screens
     //
     <declaraçoes>...
     //
     RESTORE FROM Screens ADDITIVE
     ptr = "1"
     RESTORE SCREEN FROM ("scr_" + ptr)

 Arquivos:  Biblioteca CLIPPER.LIB.
 To download this example - click here.

See Also: LOCAL PRIVATE PUBLIC SAVE