1
package My_Test;
use warnings;
use strict;
use Curses;
sub routine {
my $scr = newterm($ENV{TERM}, \*STDERR, \*STDIN);
set_term($scr);
noecho();
keypad(1);
printw "press a key: ";
refresh;
my $c = getch();
printw "$c\n";
refresh;
sleep 1;
endwin();
delscreen($scr);
}
1;
當我運行此腳本詛咒:以「newterm」問題調用它時,曾多次
#!/usr/bin/env perl
use warnings;
use strict;
use My_Test;
My_Test::routine();
My_Test::routine();
第二My_Test::routine
產生此錯誤消息:
Use of uninitialized value in subroutine entry at My_Test.pm line 8.
argument 0 to Curses function 'set_term' is not a Curses screen at My_Test.pm line 8.
爲什麼這子程序只工作第一次?