Pessoal, nunca usei este comando para definir nada no sistema,
agora precisava usar assim
#define mutavel GR
mas so funciona no programa principal, nos outros prgs ele nao entende que mutavel deve virar GR, precisaria defini-la como publica...
alguem sabe se é possivel ?
Grato,
ABEL
comando #DEFINE
Moderador: Moderadores
-
alxsts
- Colaborador

- Mensagens: 3092
- Registrado em: 12 Ago 2008 15:50
- Localização: São Paulo-SP-Brasil
comando #DEFINE
Olá!
#define é uma diretiva dos pré-processadores dos compiladores padrão xBase, como Clipper, [x]Harbour, etc...
Serve para definir constantes manifestas, que são trocadas no arquivo .Prg antes dele ser compilado. Por esse motivo, você deve fazer os #define em cada um dos Prgs que vão utilizar a constante.
Você também poderá criar um arquivo texto com todas as suas diretivas de pré-processador e salvá-lo com a extensão .ch (Clipper Header). Feito isto, em cada Prg adicione uma diretiva #include "<caminho\NomeDoSeuArquivo.ch>"
Não se esqueça de verificar os tipos de dados de suas constantes manifestas. No teu exemplo, (#define mutavel GR) GR parece ser uma string. Se for, o correto é: #define mutavel "GR". Em algum trecho dos teus Prgs, você fará o teste: If mutavel == "GR" ... comandos.
Observação importante: os nomes das constantes são sensíveis ao caso (case sensitive). Assim, mutavel é diferente de Mutavel e diferente de MUTAVEL. Por convenção, os nomes de constantes manifestas são escritos com todas as letras maiúsculas.
#define é uma diretiva dos pré-processadores dos compiladores padrão xBase, como Clipper, [x]Harbour, etc...
Serve para definir constantes manifestas, que são trocadas no arquivo .Prg antes dele ser compilado. Por esse motivo, você deve fazer os #define em cada um dos Prgs que vão utilizar a constante.
Você também poderá criar um arquivo texto com todas as suas diretivas de pré-processador e salvá-lo com a extensão .ch (Clipper Header). Feito isto, em cada Prg adicione uma diretiva #include "<caminho\NomeDoSeuArquivo.ch>"
Não se esqueça de verificar os tipos de dados de suas constantes manifestas. No teu exemplo, (#define mutavel GR) GR parece ser uma string. Se for, o correto é: #define mutavel "GR". Em algum trecho dos teus Prgs, você fará o teste: If mutavel == "GR" ... comandos.
Observação importante: os nomes das constantes são sensíveis ao caso (case sensitive). Assim, mutavel é diferente de Mutavel e diferente de MUTAVEL. Por convenção, os nomes de constantes manifestas são escritos com todas as letras maiúsculas.
[]´s
Alexandre Santos (AlxSts)
Alexandre Santos (AlxSts)
