Bonjour,

voici une classe Test définie dans./impl/Test.pm :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
package impl::Test;
 
use warnings;
use strict;
 
sub new {
  my ( $class ) = @_;
  my $self = {};
  bless( $self, $class );
  return $self;
}
 
1;
**********
Voici un programme utilisant la classe Test :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
#!/usr/bin/perl
 
use warnings;
use strict;
use impl::Test;
 
my $test = impl::Test->new();
**********

Mon problème : lorsque je remplace
Code : Sélectionner tout - Visualiser dans une fenêtre à part
my $test = impl::Test->new();
par
Code : Sélectionner tout - Visualiser dans une fenêtre à part
my $test = Test->new();
j'obtiens l'erreur
Can't locate object method "new" via package "Test" (perhaps you forgot to load "Test"?) at ./fred line 7.
Je ne comprends pas ce message vu que j'ai utilisé "use impl::Test;" avant d'instancier ma classe !!

Merci pour votre aide.