永发信息网

谁能解释下这句perl中main后面的::。 这个main是什么?

答案:2  悬赏:60  手机版
解决时间 2021-11-16 07:04
谁能解释下这句perl中main后面的::。 这个main是什么?
最佳答案
首先你得明白 perl 里面所有的脚本, 包括模组(.pm) 或是主程序 (youscript.pl) 其实都是包 (package).
因此, 你的主程序其实就是一个默认叫做 main 的包.

另一个你要知道的是, 如果我们想从主程序得到另一个包的内容或涵数时, 我们会写成
$output = &some::package::method( $argv );
或者 $someVar = $some::package::value;

实际的应用上, 当一个模组想要改变, 或存取 main 的行为或内容时, 我们就会写成 $main::... &main::.... 例如, 如果我们自建了一个模组, 想改变 die() 的行为时, 可以写成
$main::SIG{__DIE__} = \&mySub ;
这样一来, 只要 main 发生 die() 的事件时, $main 就会将这个 die 的事件交到你的 mySub() 去处理追问谢谢。我的目录里有很多.pl , .pm 文件。究竟哪个是main呢,我没有找到任何定义。
刚刚接触perl,问个初级的问题。你写的&some::package::method( $argv );里,
some 是什么? 是package的上一级的类吗?追答"你的主程序其实就是一个默认叫做 main 的包"
即是 : 当你在 shell 里输入 "perl myscript.pl" 时, myscript.pl 就是 main
你执行那个 script, 那个 script 就是 main
因为在这个 main 里, 你会继续 "动员" 并他的包去完成工作

&some::package::method 只是英文.. 我的意思只是:
$输出 = &某个类::某个子类::某个涵数( $参数 );
全部回答
main 是默认的包名,就像当于 C++ 中的最外层的命名空间 "::acl_hash_cache"。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
联通4G组合套餐:1000分钟+4G流量+来电提醒合
玻璃钻头一般能开多大孔
怎么查看自己的网络是否被人恶意占用
在水一方(安庆岳西)地址在什么地方,我要处理
withabaskerball的中文意思是什么中文就对了
陇海路通泰路去郑州十八中做几路公交车
36除17竖式计算
动漫城地址在哪,我要去那里办事,
女孩的第二,三次跟经常做用怎么样去区别
正宗天麻骨头汤怎么做
咸阳打狂犬疫苗有没打单针的,我是出差在外地
佛山人说好乱是什么意思
食家荘酒店(安庆岳西)地址在什么地方,我要处
求解a3+a2-a-e=0中,a是否可逆
AMD速龙635适合配个什么A卡最好?
推荐资讯
动静相宜是什么意思
富国大厦7F怎么去,速影健身(富国店)的地址
女朋友的姐姐结婚了,送点什么好?人情多少最
怎样在联想平扳电脑里把不想要的照片删除的不
被长着大丁丁的萌妹上了是什么感受
7.52x0.65÷0.752-0.65的筒便方法
请问手腕戴的佛珠戴哪支手上有讲究吗
做为姑姑,看着侄儿被别人欺负你会怎么办?
火电厂集控运行专升本
济南乳晕缩小一般多少钱
育肥猪是不是越大吃的饲料越少
天津web前端培训学校,想学前端,但不明白和U
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?