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/


Reply via email to