Avatar billede kare Nybegynder
23. juni 2003 - 12:25 Der er 5 kommentarer og
1 løsning

Teste om variabel er erklæret

Kan man teste om en variabel er erklæret?

Jeg bruge nogle macroer til at oprette variable og de "overlapper" hinanden, dvs. jeg skal teste om en variabel er erklæret, for ikke at erklære den to gange, der jo giver fejl..

Håber I kan hjælpe,

Kare
Avatar billede cool_casper Nybegynder
23. juni 2003 - 12:35 #1
if (isset($minvar)){
  echo 'Den er erlæret';
}
Avatar billede kare Nybegynder
23. juni 2003 - 14:29 #2
Øhhh....
Det dur vist ikke lige i C5!?!
Avatar billede dma Nybegynder
23. juni 2003 - 15:35 #3
Nej, der findes ikke nogen mulighed for dette.

Om den vil tillade det kommer an på hvor du anvender koden.

Hvis det er en XAL kørsel, vil du ikke kunne oprette den samme variabel to gange, så vil den stoppe. Er det en søgning (enten QTX eller til en rapport) kan du godt erklære den samme variabel igen i en tabeltrigger o.lign., men så får den kun scope (virkefelt) for den pågældende trigger og den overordnet definerede vil ikke være tilgængelig.

Derfor - hvis du erklærer nogle variabler i nogle macrobiblioteker, så vil der ikke være nogen fare hvis du #MacroLoad 'er i Init triggeren. Her vil den afvise at erklære den samme variabel 2 gange!

Dog vil kørslen normalt stoppe hvis du prøver at erklære en variabel 2 gange.
Avatar billede kare Nybegynder
23. juni 2003 - 15:45 #4
Hmm.. det var da ærgeligt.
Avatar billede Broholm Novice
23. juni 2003 - 16:03 #5
Jo der gør:

#IFNOT.X_DECL
    INT &X
    #DEFINE.X_DECL
#ENDIF

******

Dette vil ikke fejle:

#IFNOT.X_DECL
    INT &X
    #DEFINE.X_DECL
#ENDIF
#IFNOT.X_DECL
    INT &X
    #DEFINE.X_DECL
#ENDIF

-Broholm
Avatar billede dma Nybegynder
23. juni 2003 - 16:09 #6
Det som broholm henviser til er brugen af macrodirectiver.

Smart - den havde jeg fuldstændig overset. Du får lige mine point her:

http://www.eksperten.dk/spm/368260
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester