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

Re: Blessed be the OOP'ers

by mdillon (Priest)
on Jun 29, 2000 at 01:07 UTC ( #20255=note: print w/ replies, xml ) Need Help??

in reply to Blessed be the OOP'ers

you are initializing @employees as an array containing a single element, which is an anonymous array. the initialization should read: my @employees = ();
this will initialize it as an array with no elements.

Comment on Re: Blessed be the OOP'ers
Download Code
Replies are listed 'Best First'.
RE: Re: Blessed be the OOP'ers
by chromatic (Archbishop) on Jun 29, 2000 at 02:26 UTC
    More specifically, the original code could be written this way: my $employees = [];
    Hopefully that makes it clear that a list enclosed in square brackets is an anonymous list. Assigning that somewhere creates a reference. (That's why you can stuff it in a scalar.)

    The original code creates @employees and sets the first (and only) element to a reference to that anonymous list.

      And the push would then be
      push @$employees, $person;
      with printing them looking like
      foreach $p (@$employees) {
         print $p->name(),"\n";
      Using the array reference would make it easy to stuff this list of employees into another object/list/whatever.

Log In?

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

How do I use this? | Other CB clients
Other Users?
Others drinking their drinks and smoking their pipes about the Monastery: (4)
As of 2015-11-28 01:21 GMT
Find Nodes?
    Voting Booth?

    What would be the most significant thing to happen if a rope (or wire) tied the Earth and the Moon together?

    Results (737 votes), past polls