Bonjour,
Je cherche a comprendre le fonctionnement objet sous perl. J'arrive bien a recuperer les variables simples, mais pas les tableaux.
J'ai une classe, qui a l'air de faire le travail demandé :
Et le script qui l'utilise :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 #fichier explore_bl2seq.pm package explore_bl2seq; use strict; sub explore { my($class,$file)=@_; my $this={}; bless($this,$class); my @tab; my $i; for($i=0;$i<10;$i++) { push(@tab,($i*11)); } #print @tab; #renvoie bien toutes les valeurs du tableau $this->{FILEINI}=$file; $this->{FILEMODIF}=$file."truc"; $this->{TABLEAU}=@tab; return $this; } 1;
Le probleme est que le script ne recupere pas le tableau, mais la valeur 10 (le nb d'elements du tableau) !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 #!/usr/bin/perl use strict; use explore_bl2seq; my $ficini; my $ficmodif; my @tableau; my $f; my $expl=explore_bl2seq->explore('fichier_blast'); $ficini=$expl->{FILEINI}; $ficmodif=$expl->{FILEMODIF}; @tableau=$expl->{TABLEAU}; print $ficini."\n".$ficmodif."\n"; #renvoie les valeurs attendues print @tableau; #renvoie...10 (???!!)
Qu'est-ce que je fais mal ?
Merci pour votre aide,
Sohnic
Partager