80.$ref = /@array; 可想象为{$ref}=={array},使用的方式一样.如$$ref[0] == ${$ref}[0] == $array[0];@$ref[2,3] == @{$ref}[2,3] == @array[2,3].标量和哈希的引用也同理.
81.函数可传递2个引用数组 fun(/@array1, /@array2),在函数内部用my($val1, $val2) = @_可分别获取2个数组内容.应使用引用的方式显示传递可修改参数,而不要直接修改@_.
82.引用的原变量退出作用域也是有效的,匿名存储:$ref = {phone=>'bell', light=>'edison'},也可以使用[]
83.@array(/@a1,/@a2),用数组的数组模拟2维数组,获取元素值:$array[1][2];获取第2组数组最大索引:$#($array[1]) == scalar(@($array[1])).
84.在调试状态下 print $val,如果$val是引用,可打印引用的类型,SCALAR,ARRAY,HARSH,CODE.使用x $val输出该引用和内部结构
85.use english模块:
$_ == $ARG
@_ == @ARG
$! == $OS_ERROR
@^o == $OSNAME
@0 == @PROGRAM_NAME
86.use diagnostics产生详细诊断信息
W 警告,D 使用了不该使用的语句,S 严重警告,F 致命错误 不能运行
87.使用-w 和use strict
88.在打印出错信息中附加DEBUG 并使用_FILE_和_LINE_输出文件名和行号.