Use of uninitialized value in addition (+) at Parent.pm line 17.
Use of uninitialized value in addition (+) at Parent.pm line 17.
####
package Parent;
use strict;
use warnings;
use Carp;
use Data::Dumper;
use Class::MethodMaker
get_set => [
{ -read_cb => sub { ## THIS ONE IS NOT WORKING .........
my ($self,$val1,$val2) = shift;
$self->{val1} = $val1;
$self->{val2} = $val2;
####
my $out = $self->{val1} + $self->{val2};
return $out;
}
},'add',
{ -read_cb => sub {
$_[1] - 1;
}
},'subtract'
],
new => 'new';
1;
# Child Class .............
package Child;
use Data::Dumper;
use Parent;
my (%val1,%val2);
sub new {
bless [ ] => shift;
}
sub subtract {
$self = shift;
$val1{$self}=shift;
$val2{$self}=shift;
return $val1{$self}-$val2{$self};
}
$myobj = Child->new();
$subobj=$myobj->subtract(34,31); # this method s working
print Dumper $subobj;
$pObj = Parent->new(); # This is not working
$pObj->add(100,3);
print Dumper $pObj;
$pObj=Parent->subtract(100); # subtracts 1 from 100 .
print Dumper $pObj;