相关疑难解决方法(0)

如何在不同的堆栈框架中本地化Perl变量?

我有一些自动生成的代码,可以在一些代码中的一些不同的地方有效地写出以下内容:

no warnings 'uninitialized';
local %ENV = %ENV;
local $/   = $/;
local @INC = @INC;
local %INC = %INC;
local $_   = $_;
local $|   = $|;
local %SIG = %SIG;
use warnings 'uninitialized';
Run Code Online (Sandbox Code Playgroud)

当自动生成代码时,有些人认为代码并不是绝对必要的"漂亮",但是我想把它拉到子程序中.但是,这将在该子例程中本地化这些变量.有没有办法在调用堆栈框架中本地化这些变量?

更新:以类似的方式,能够在更高的堆栈帧中运行eval会很好.我认为Python已经有了这个.如果Perl也这样做会很好.

perl scope local

24
推荐指数
2
解决办法
1055
查看次数

标签 统计

local ×1

perl ×1

scope ×1