Mike Yearwood
Toronto, Ontario, Canada
General information
Category:
Coding, syntax & commands
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.
Previous
Next
Reply
View the map of this thread
View the map of this thread starting from this message only
View all messages of this thread
View all messages of this thread starting from this message only