You could, if you go with AgentM's suggestion (and you should listen to merlyn's advice), set up a method in A.pm that would look like so (assuming your object is a reference to an anonymous hash):
sub the_problem { my $self = shift; $self->{_the_problem} = shift if (@_); # sets _the_problem to the +value we've been passed *if* we've been passed a value $self->{_the_problem}; # returns the current value of _the_problem }
It's important to put this method in A.pm so B and C can inherit this method.
In the script which uses the modules, you would then set this property by calling the method with arguments.
HTHuse strict; use A::B::C; #use your modules. Pay attention to btrott's advice abov +e on Exporter etc. ... my $foo = new A::B::C; $foo->the_problem("argle bargle"); # $foo->{_the_problem} now eq 'argl +e bargle' print $foo->the_problem(); # prints "argle bargle"
Philosophy can be made out of anything. Or less -- Jerry A. Fodor
In reply to Re: Module programming
by arturo
in thread Module programming
by (\/)(\/)
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |