Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
What's the secret meaning of this piece of code?
Message
Information générale
Forum:
Visual FoxPro
Catégorie:
Codage, syntaxe et commandes
Divers
Thread ID:
00042899
Message ID:
00042951
Vues:
36
>>Recently, I had to optimize/debug/verify/etc an old project written in FP 2.6.
>>
>>At the begining of the main program I found the following code that doesn't make any sense to me. (I also asked other FoxPro programmers from our team, but no answer was found.):
>>
>>parameter Cmd_Param
>>
>>
if type("Cmd_Param") = "C"
>>   TempVar = Cmd_Param
>>   release Cmd_Param
>>   private Cmd_Param
>>   Cmd_Param = TempVar
>>endif
>>
>>I can't find any reason to have this piece of code in the program since, IMO, it does nothing. Am I missing something? Is there something subtle/secret/etc and I don't see it?
>>
>>Vlad
>
>
>Vlad, this IS a mystery. One question comes to mind: Is the original variable used in the calling program "Cmd_Param" also? If so, then this code sets (for character-type values) the Cmd_Param variable private AT THIS LEVEL. Therefore it is now invisible to the calling program. Haven't the faintest idea why this would be wanted....
>
>Thanks for the puzzle.
>
>Barbara

As I said, this is the begging of the main program. So, there's no calling program.

The PARAMETER statement makes also all parameters private to the procedure. So, there's no need to make them private (I saw a piece of code recently here on UT that does that and it also made no sense to me...).

Anyway, even if the PARAMETER statement would not make params private, the RELEASE would release the variable at previous level.

Vlad
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform