Comment puis-je appeler des méthodes sur des scalaires Perl?
-
05-07-2019 - |
Question
J'ai vu du code appelé méthodes sur des scalaires (nombres), par exemple:
print 42->is_odd
Que devez-vous surcharger pour pouvoir réaliser ce type de "fonctionnalité"? dans votre code?
La solution
Faites-vous référence à sélection automatique ? Voir aussi Devrais-je utiliser l'autobox en Perl? .
Autres conseils
Ceci est un exemple utilisant la fonctionnalité autobox.
#!/usr/bin/perl
use strict;
use warnings;
package MyInt;
sub is_odd {
my $int = shift;
return ($int%2);
}
package main;
use autobox INTEGER => 'MyInt';
print "42: ".42->is_odd."\n";
print "43: ".43->is_odd."\n";
print "44: ".44->is_odd."\n";
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow