OVH Cloud OVH Cloud

initialisation de variables

5 réponses
Avatar
Newsgroups
Bonjour,

J'initialise mes variables comme suit :=20

my $var1;
my $var2;
my $var3;
my $var4;
my $var5;
my $var6;
... etc ...

Or j'en ai tout de m=EAme un bon nombre. comment je peux optimiser cela,
surtout visuellement. Sur une seule ligne je pense que cela marche ?

my $var1; my $var2;... ...
mais il y =E0 surement d'autres m=E9thodes ?

5 réponses

Avatar
Mark Clements
Newsgroups wrote:
Bonjour,

J'initialise mes variables comme suit :

my $var1;
my $var2;
my $var3;
my $var4;
my $var5;
my $var6;
... etc ...

Or j'en ai tout de même un bon nombre. comment je peux optimiser cela,
surtout visuellement. Sur une seule ligne je pense que cela marche ?

my $var1; my $var2;... ...
mais il y à surement d'autres méthodes ?



my ($var1,$var2,$var3);

Ca declare les variables: il ne les initialise pas.

my ($var1,$var2,$var3) = qw(a b c);

pour initialiser.

perldoc my

my EXPR
my TYPE EXPR
my EXPR : ATTRS
my TYPE EXPR : ATTRS
A "my" declares the listed variables to be local (lexically) to
the enclosing block, file, or "eval". If more than one value is
listed, the list must be placed in parentheses.

Mark

Avatar
Newsgroups

Ca declare les variables: il ne les initialise pas.
ah oui, pardon, je voulais dire "déclarer"... :-)


Avatar
Nicolas George
Newsgroups wrote in message :
Or j'en ai tout de même un bon nombre. comment je peux optimiser cela,
surtout visuellement.


my @var;

Si les variables ont des significations différentes, il vaut mieux les
laisser une par ligne, ce sera plus lisible.

Avatar
Alex Marandon
Newsgroups wrote:
J'initialise mes variables comme suit :

my $var1;
my $var2;
my $var3;
my $var4;
my $var5;
my $var6;
[...]


C'est peut-etre un signe indiquant que tu devrais modulariser ton
programme en creant des subroutines et/ou des packages. Tu accorde
peut-etre trop de responsabilites au bloc de code en question.

Avatar
Klaus
On Jan 31, 10:32 pm, Mark Clements
wrote:
perldoc my

my EXPR
my TYPE EXPR
my EXPR : ATTRS
my TYPE EXPR : ATTRS
A "my" declares the listed variables to be local (lexically) to
the enclosing block, file, or "eval". If more than one value is
listed, the list must be placed in parentheses.


existe aussi en français:
http://perl.enstimac.fr/DocFr/perlfunc.html#item_my

my TYPE EXPR
my EXPR : ATTRIBUTS
my TYPE EXPR : ATTRIBUTS
my() déclare les variables listées comme étant locales
(lexicalement) au bloc, fichier ou eval() englobant.
Si plus d'une variable est listée, la liste doit être
placée entre parenthèses.

--
Klaus