Beefy Boxes and Bandwidth Generously Provided by pair Networks
Come for the quick hacks, stay for the epiphanies.
 
PerlMonks  

Re: reference , advantages?

by TomDLux (Vicar)
on Jun 30, 2011 at 17:52 UTC ( [id://912222]=note: print w/replies, xml ) Need Help??


in reply to reference , advantages?

In new_date_append(), you are assigning a value to $monster_date, which is an undeclared variable, as far as I can see. Why aren't you getting an error message about that? That assigned value uses a global variable named $passed_new-date, which is not passed at all. The new value then becomes the return value of the routine.

$fref is assigned a reference to the subroutine, which might then be invoked as $fref->(); $$fref is meaningless and should generate an error.

As Occam said: Entia non sunt multiplicanda praeter necessitatem.

Replies are listed 'Best First'.
Re^2: reference , advantages?
by Sandy (Curate) on Jun 30, 2011 at 18:00 UTC
    Actually, if you assume that the <snip> has the proper declarations, the $fref is a reference to the returned string from the function and $$fref is the string.

    Cleaned code

    #!/usr/bin/perl use strict; use warnings; my $passed_new_date = new_date(); my $fref = \&new_date_append(); ###--- HERE is my REF ---### sub new_date { my ( $year, $month, $day ) = (localtime)[ 5, 4, 3 ]; sprintf( "%04d%02d%02d", ( $year += 1900 ), $month + 1, $day ); } sub new_date_append { return my $monster_date = "OhioS$passed_new_date"; } if ( $passed_new_date and $$fref ) { print $$fref,"\n"; }
    Result
    >perl ref.pl OhioS20110630

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://912222]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others romping around the Monastery: (4)
As of 2024-04-24 17:31 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found