¿Cómo puedo llamar a los métodos en los escalares Perl?
-
05-07-2019 - |
Pregunta
Vi algunos códigos que llamaban métodos en escalares (números), algo como:
print 42->is_odd
¿Qué tiene que sobrecargar para poder lograr este tipo de funcionalidad " " en tu codigo?
Solución
¿Se refiere a autobox ? Consulte también ¿Debo usar autobox en Perl? .
Otros consejos
Este es un ejemplo que utiliza la función 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";
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow