Bases de ActivePerl portée des variables de base de ActivePerl - Partie 15 Introduction Cela fait partie de ma série 15, Bases de ActivePerl. Dans cette partie de la série, nous regardons ce qui est appelé la portée des variables. Un bloc est un ensemble de déclarations, entre accolades, qui sont {et}. La question ici est: si une variable est déclarée en dehors d'un bloc-t-il être vu dans le bloc? D'autre part, si elle est déclarée à l'intérieur du bloc, il va être vu en dehors du bloc? Blocs ne se produisent pas arbitrairement dans le code.
Il ya certaines constructions qui ont blocs. Les constructions suivantes ont des blocs: si, pour, foreach, et sous. Nous avons vu toutes ces constructions. Pour le reste de ce tutoriel, nous regardons le cas, et sous des constructions et de la façon dont la portée des variables est appliquée à eux. Le contour des règles dans ce tutoriel sont applicables lorsque la déclaration, "use strict;" est utilisé dans la partie supérieure de ce code.
Comme vous essayez les exemples de code dans ce tutoriel, vous pouvez recevoir des messages d'erreur; ne vous inquiétez pas les messages d'erreur pour le moment. Remarque: Si vous ne pouvez pas voir le code ou si vous pensez que quelque chose manquait (lien brisé, l'image absente), contactez-moi au [email protected]. Qui est, me contacter pour le moindre problème que vous avez à propos de ce que vous lisez.
La construction if et la portée des variables lire et de tenter le code suivant: use strict; print "Content-Type: text /html \\ n \\ n"; my $ hisVar = "son scalaire"; si (25 == 25) {print $ hisVar; my $ herVar = "son scalaire"; } #print $ HerVar; La condition if est si 25 est égal à 25. Maintenant, cette condition sera toujours retourner vrai, et donc le si le bloc est toujours exécutée. En dehors de la si-bloc, la variable $ hisVar est déclarée et affecté la valeur, "son scalaire". A l'intérieur du bloc, si il ya une déclaration d'imprimer $ hisVar.
Cette variable a été déclarée à l'extérieur du bloc; si on le voit à l'intérieur du bloc, ce qui sera imprimé. Si vous avez essayé le code que vous auriez remarqué que la valeur de $ hisVar a été imprimé. Maintenant, à l'intérieur du bloc, une nouvelle variable, $ a été déclarée herVar et avait une valeur qui lui est attribué. En dehors du bloc, il est un commentaire. Ce commentaire est en fait une déclaration précédée par le commentaire dénotation, #. Parce que de ce signe précédent, la déclaration n'a pas exécuté.
Si vous