Mike Yearwood
Toronto, Ontario, Canada
Information générale
Catégorie:
Codage, syntaxe et commandes
Hi George
Can you give an example of how the access and assign methods might help me revert a string parameter that was changed to an array back to a string?
>>Hi All
>>
>>I need to pass a parameter to a method by reference. The called method may alter the parameter, so I want to push the parameter to a property. The parameter may be a string or an array to begin with. I don't believe the save and restore variables to memo fields / .mem files route would be feasible.
>>
>>The problem is, if an initial parameter is passed as a string and pushed to a property, and the called program changes the passed parameter to an array, it doesn't seem possible to pop the parameters so as to cause the array to become a string again.
>>
>>To demonstrate...
>>
>>Junk.prg
>>lcString = "Testing"
>>?junk1(@lcString)
>>disp memo
>>*Notice that lcString is now an array.
>>return
>>
>>junk1.prg
>>lParameters tuParameter
>>*Push the incoming parameters
>>local luParameter
>>luParameter = tuParameter
>>*Convert the string to an array to do some processing...
>>local array laArray[1,1]
>>laArray[1,1]="Something else"
>>dimension tuParameter[1,1]
>>=acopy(laArray,tuParameter)
>>*Do the processing
>>...
>>*Pop the parameter (so that we get back the original string)
>>tuParameter = luParameter
>>return
>>
>>I've tried releasing tuParameter before storing luParameter to it. Any ideas?
>
>In addition to what Sergey suggested, you might consider the _access and _assign events.
Précédent
Suivant
Répondre
Voir le fil de ce thread
Voir le fil de ce thread à partir de ce message seulement
Voir tous les messages de ce thread
Voir tous les messages de ce thread à partir de ce message seulement