Bonjour,
Je souhaiterai surcharger en Perl l'opérateur = ou >. J'ai un objet $test (voir dessous le constructeur new). Je souhaite appellée l'opérateur = qui ferait qu'afficher les arguments qui le suivent. Par exemple:
#!/usr/bin/perl
#use strict;
package classe;
sub new
{
my ($class,$data) = (@_);
my $self = {
valeur => ""
};
bless ($self,$class);
return $self;
}
sub valeur
{
my $self = shift;
return $self->{valeur};
}
use overload (
'=' => 'TEST'
);
sub TEST
{
my $self = shift;
my ($glob,$deb,$fin)= @_; # ça doit pas marcher ça
print "GLOB:$glob\n";
print "DEB:$deb\n";
print "FIN:$fin\n";
}
$self->{valeur}=$glob;
return $glob;
}
# exemple d'utilisation
my $time="150630";
my $objet = new classe();
$objet= ($time,2,2); #MARCHE PAS!!!
# ou $objet>($time,2,2);#MARCHE PAS!!!
# print "valeur :" . $objet->valeur()."\n";#MARCHE PAS!!!
exit;
voila, si qqn a une idée.
merci par avance.