Beefy Boxes and Bandwidth Generously Provided by pair Networks
Keep It Simple, Stupid

Answer: How do I make a constructor?

by merlyn (Sage)
on Apr 26, 2000 at 00:51 UTC ( #9106=categorized answer: print w/replies, xml ) Need Help??

Q&A > object-oriented programming > How do I make a constructor? - Answer contributed by merlyn

The use of
  $class = ref($class) || $class;
is unneeded 90% of the time, and insufficient for 90% of the rest of the time.

If you want a clone method, use a clone or copy method on an instance. If you want another object of the same class as the first object, use

  my $two = ref($one)->new(@parms);
Which reduces our canonical simple constructor to:
  sub new {
    my $class = shift;
    my $self = { @_ };
    bless $self, $class;
Nice and simple.

Log In?

What's my password?
Create A New User
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others lurking in the Monastery: (7)
As of 2016-10-26 05:28 GMT
Find Nodes?
    Voting Booth?
    How many different varieties (color, size, etc) of socks do you have in your sock drawer?

    Results (335 votes). Check out past polls.