cat a.pl
#!/usr/bin/perl
package Myperlclass;
sub mysub{
my $class;
$class=shift;
my $self{};
bless $self,$class;
return $self;
}
sub add{
my $a,$b,$res;
$a=$_[0];
$b=$_[1];
$res=$a+$b;
print "res: $res\n";
}
cat b.pl
#!/usr/bin/perl
use Myperlclass;
$obj=new Myperlclass();
$obj->add(4,5);
perl b.pl
Error:
Can't locate Myperlclass.pm in @INC (@INC contains:
/usr/lib/perl5/5.10.0/i586-linux-thread-multi
/usr/lib/perl5/5.10.0 /usr/lib/perl5/site_perl/5.10.0/i586-linux-thread-multi
/usr/lib/perl5/site_perl/5.10.0
/usr/lib/perl5/vendor_perl/5.10.0/i586-linux-thread-multi
/usr/lib/perl5/vendor_perl/5.10.0 /usr/lib/perl5/vendor_perl .)
at call_perl.pl line 3.
BEGIN failed--compilation aborted at call_perl.pl line 3.
Can i call class member function in same a.pl file?
---------- Post updated at 10:33 AM ---------- Previous update was at 10:31 AM ----------
Done.
cat Myperlclass.pm
package Myperlclass;
sub new{
my $class;
$class=shift;
my $self={
a=>shift,
b=>shift,
};
bless $self,$class;
return $self;
}
sub add{
my ($vr,$a,$b)=@_;
my $res;
$res=$vr->{a}+$vr->{b};
print "res: $res\n";
}
cat b.pl
#!/usr/bin/perl
use Myperlclass;
$obj=new Myperlclass(4,5);
$obj->add();