Beefy Boxes and Bandwidth Generously Provided by pair Networks
Do you know where your variables are?

Re: Array loops and assignments

by rjt (Deacon)
on Jul 07, 2013 at 21:32 UTC ( #1043014=note: print w/replies, xml ) Need Help??

in reply to Array loops and assignments

The real problem I see is that if you really are referring to values by their index (regardless of how you accomplish that), that's probably a rather serious design problem. Then again, you say:

The requirement is that 8 elements of the array be stored in separate attributes. So instead of doing a single-assignment for each attribute, I was hoping to just put it in a loop and assign it to the corresponding variable.

That's actually quite a common requirement, most often seen in sub argument processing:

my ($name, $number) = @_;

For longer and/or variable lists of arguments, hashes provide more flexibility and basically a free namespace:

#!/usr/bin/env perl use 5.012; use warnings; sub read_order_back { my %courses = ( appetizer => 'soup', salad => 'tossed', @_ ); die "No main?!" unless defined $courses{main}; print "\u$courses{appetizer} to start, followed by a\n" . "lovely $courses{salad} salad, with $courses{main}\n" . "for your entree"; print ", and finally a\nstunning $courses{dessert}" if defined $courses{dessert}; print ". Bon apetit!\n"; } read_order_back(main => 'ribs');


Soup to start, followed by a lovely tossed salad, with ribs for your entree. Bon apetit!

Update: Whoops, now I'm hungry.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1043014]
and the rats come out to play...

How do I use this? | Other CB clients
Other Users?
Others browsing the Monastery: (4)
As of 2018-05-24 04:57 GMT
Find Nodes?
    Voting Booth?