需要 Readline - 你不能创建这种类型的实例 (Readline)
require Readline - You cannot create an instance of this type (Readline)
当我运行这段代码
require Readline;
my $rl = Readline.new;
my $string = $rl.readline( ':');
$string.say;
我收到此错误消息:
You cannot create an instance of this type (Readline)
当我使用 use
加载 Readline
时,它起作用了。为什么 require Readline
不起作用?
由于 require
导致模块在运行时加载,因此 Readline
符号的查找也必须推迟到运行时。这可以使用 ::('Type::Name')
语法来完成,如下所示:
require Readline;
my $rl = ::('Readline').new;
my $string = $rl.readline( ':');
$string.say;
当我运行这段代码
require Readline;
my $rl = Readline.new;
my $string = $rl.readline( ':');
$string.say;
我收到此错误消息:
You cannot create an instance of this type (Readline)
当我使用 use
加载 Readline
时,它起作用了。为什么 require Readline
不起作用?
由于 require
导致模块在运行时加载,因此 Readline
符号的查找也必须推迟到运行时。这可以使用 ::('Type::Name')
语法来完成,如下所示:
require Readline;
my $rl = ::('Readline').new;
my $string = $rl.readline( ':');
$string.say;