推荐答案
测试一下
题目
5使用特殊的下划线文件句柄 ................................ ................................ ................................ ......…
参考答案与知识点
参考答案
在 Perl 中,特殊文件句柄 `_`(下划线)用于缓存上一次 stat、lstat、-X 文件测试操作的结果。当对同一个文件进行多次文件测试(如 -e、-f、-d、-s 等)时,使用 `_` 可以避免重复的系统调用,提高效率。例如:`my $size = -s 'file'; my $mtime = (stat(_))[9];` 等价于先做 -s,然后使用 `_` 获取 stat 信息。注意:`_` 只保存最后一次 stat/lstat 或文件测试的结果,不能跨函数调用;对目录打开句柄、网络套接字等不适用。易错点包括:在调用其他可能改变系统状态的操作后使用 `_` 会导致结果不准确;`_` 不能用于文件打开操作(如 open);在并发环境下需谨慎。
涉及知识点
- Perl 特殊文件句柄 _ 的定义
- stat/lstat 缓存的机制与性能优化
- 文件测试操作符与 _ 的配合使用
- 使用 _ 的局限性与注意事项
- 区分 _ 与普通文件句柄的差异