stopwatch.pm
来自「perl learn perl by examples」· PM 代码 · 共 34 行
PM
34 行
package Stopwatch;
sub TIESCALAR {
my ($pkg) = @_;
my $obj = time(); # $obj stores the time at last reset.
return (bless \$obj, $pkg);
}
sub FETCH {
my ($r_obj) = @_;
# Return the time elapsed since it was last reset
return (time() - $$r_obj);
}
sub STORE {
my ($r_obj, $val) = @_;
# Ignore the value. Any write to it is seen as a reset
return ($$r_obj = time());
}
1;
package main;
if (!caller()) {
# Test driver;
tie $s1, 'Stopwatch';
$s1 = 0;
sleep(2);
print $s1;
$s1 = 0;
sleep(5);
print $s1;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?