Pendant que je travaillais sur un script Perl, une question se posait juste pour la curiosité. J'ai remarqué qu'aucun avertissement ou erreur n'apparaît lorsque je crée un objet sans l'assigner à une variable (scalaire/tableau/hachage).Un objet est-il accessible s'il n'est pas affecté à une variable?
Par exemple:
Person->new ('Sebastian', 'Vettel', 30);
Un MCVE est la suivante.
use strict;
use warnings;
package Person;
sub new {
my $class = shift;
my $self = {
FirstName => shift,
LastName => shift,
Age => shift,
};
print "Created a Person object: $self->{FirstName} ",
"$self->{LastName} ($self->{Age})\n";
bless $self, $class;
return $self;
}
Person->new ('Sebastian', 'Vettel', 30);
La sortie:
créé un objet Personne: Sebastian Vettel (30)
Ma question est que. Y a-t-il un moyen d'accéder à l'objet créé?
Ajouter 'sub DESTROY {print" détruit \ n "; } 'au paquet et' <>; 'après' Person-> new' et voyez par vous-même. – ikegami
@ikegami J'ai essayé et vu. Merci. – ahmedus