Basilides has asked for the wisdom of the Perl Monks concerning the following question:
Say I've got a parent class, Word, with subclasses, Noun, Verb & Adjective, and I want to create a reference to one of the subclasses, whose type depends on a file input. To comply with use strict on lexical scope, I reckon I need to start off with a variable declaration, which *doesn't* include an assignment: my $word;. You see this in other languages but I've never seen it in Perl, hence I'm raising it now:
If this isn't the done thing, please could you tell me how you *should* do it.my $word; #this is it--are you supposed to do this? if ($part eq 'n') { $word = new Noun(@blah); } elsif ($part eq 'v') { $word = new Verb(@blah); } else { $word = new Adjective(@blah); } print $word->get_english(); #etc etc
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Good practice: Variable declaration
by japhy (Canon) on Jun 27, 2002 at 16:43 UTC | |
by Juerd (Abbot) on Jun 27, 2002 at 17:07 UTC | |
by japhy (Canon) on Jun 27, 2002 at 17:13 UTC | |
|
Re: Good practice: Variable declaration
by mfriedman (Monk) on Jun 27, 2002 at 16:40 UTC | |
|
Re: Deciding a class at runtime.
by frankus (Priest) on Jun 27, 2002 at 16:40 UTC | |
|
Re: Good practice: Variable declaration
by Aristotle (Chancellor) on Jun 27, 2002 at 17:19 UTC | |
by japhy (Canon) on Jun 27, 2002 at 17:32 UTC |