Rob Richardson <mailto:[EMAIL PROTECTED]> wrote:
: I have a routine named trace() that writes a string to a : text file. The following two lines: : : $user = $userList->GetUser($logname); : trace("User: $user->LoginName(), $user->FirstName(), $user->LastName()\n"); : : give me the following result: : : User: User=HASH(0x174c234)->LoginName(), : User=HASH(0x174c234)->FirstName(), User=HASH(0x174c234)->LastName() : : I am losing track of what is a reference to what, and what : needs to be dereferenced into what, but I don't know why or : what it is I need to do. I've done similar things elsewhere : in this application without this problem, but I don't see : what I'm doing differently. The problem seems to be in the call to trace(). Functions (and methods) won't interpolate in quoted strings without the @{ ... } construct. Try it this way. trace( sprintf "User: %s, %s, %s\n", $user->LoginName(), $user->FirstName(), $user->LastName() ); HTH, Charles K. Clarkson -- Mobile Homes Specialist 254 968-8328 -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] <http://learn.perl.org/> <http://learn.perl.org/first-response>