On Wed, Jun 4, 2008 at 9:13 PM, KELVIN PHILIP <[EMAIL PROTECTED]> wrote:
snip
> my $var = MyModule::PrintMe-> new($name);
snip
> With this program, when I execute the main, it was not printing "John";
> instead it was printing "MyModule::PrintMe"
snip
When you call a function with -> the item on the left hand side gets
passed as an argument (except when that item is a function reference).
This is useful in OO style programming. Since you do not seem to be
using OO style you should probably be saying
MyModule::PrintMe::new($name);
It is also possible that you mean
my $obj =MyModule::PrintMe->new("john");
$obj->output;
package MyModule::PrintMe;
sub new {
my ($class, $name) = @_;
return bless { name => $name }, $class;
}
sub output {
my $self = shift;
print "$self->{name}\n";
}
--
Chas. Owens
wonkden.net
The most important skill a programmer can have is the ability to read.
--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
http://learn.perl.org/