大雀软件园

首页 软件下载 安卓市场 苹果市场 电脑游戏 安卓游戏 文章资讯 驱动下载
技术开发 网页设计 图形图象 数据库 网络媒体 网络安全 站长CLUB 操作系统 媒体动画 安卓相关
当前位置: 首页 -> 技术开发 -> CGI专区 -> Perl教学(14)Perl5的包和模块之三

Perl教学(14)Perl5的包和模块之三

时间: 2021-07-31 作者:daque

5、指定无暂时包在perl 第5中学,不妨用如次语句指定无暂时包:package;这时候,一切的变量必需精确指出分属包名,要不就失效--缺点。$mypack::var = 21; #ok$var = 21; #error - no current package这种情景直到用package语句指定暂时包为止。6、包和子步调包的设置感化到步调中的一切语句,囊括子步调,如:package mypack;subroutine mysub {local ($myvar);# stuff goes here} 这边,mysub和myvar都是包mypack的一局部。在包mypack外挪用子步调mysub,则要指定包:$mypack'mysub。不妨在子步调中切换包:package pack1;subroutine mysub {$var1 = 1;package pack2;$var1 = 2;} 这段代码创造了两个变量$var1,一个在包pack第11中学,一个在包pack第22中学,包中的局域变量只能在其设置的子步调等语句块中运用,像普遍的局域变量一律。7、用包设置独占数据包最常常的用处是用在含有子步调和子步调所运用的全部变量的文献中,为子步调设置如许的包,不妨保护子步调运用的全部变量不行在其它场合运用,如许的数据即为独占数据。更进一步,不妨保护包名不行在其它场合运用。独占数据例:1 : package privpack;2 : $valtoprint = 46;3 : 4 : package main;5 : # this function is the link to the outside world.6 : sub printval {7 : &privpack'printval();8 : }9 :10: package privpack;11: sub printval {12: print ("$valtoprint\n");13: }14:15: package main;16: 1; # return value for require 此子步调惟有在挪用printval后本领爆发输入。该文献分为两个局部:与外界接洽的局部和独占局部。前者为缺省的main包,后者为包privpack。第6~8行设置的子步调printval可被其它步调或子步调挪用。printval输入变量$valtoprint的值,此变量仅在包privpack中设置和运用。第15、16行保证其被其它步调用require语句包括后处事平常,15即将暂时包树立回缺省包main,16行归来非零值使require不报错。8、包和体例变量下列变量纵然从其它包中挪用,也在main包中起效率:·文献变量stdin, stdout, stderr 和 argv ·变量%env, %inc, @inc, $argv 和 @argv ·其它含有特出字符的体例变量 9、考察标记表在步调中搜索标记表可用数组%_package,此处package为想考察的标记表分属的包名。比方%_main含有缺省的标记表。常常不须要亲身搜索标记表。

热门阅览

最新排行

Copyright © 2019-2021 大雀软件园(www.daque.cn) All Rights Reserved.