如果我不在 BEGIN 块中放置“require Module”代码,会发生什么情况?
不将条件模块加载放在 BEGIN
块中是否有问题? 如果没有 BEGIN
块,在预编译后更改环境变量仍然会影响加载哪个模块。
my $table;
#BEGIN {
if %*ENV<TABLE_A> {
require MY_TABLE_A <&get_table>;
$table = get_table();
}
else {
require MY_TABLE_B <&get_table>;
$table = get_width();
}
#}
Is there anything wrong with not putting the conditional module loading in a BEGIN
block?
Without the BEGIN
block changing the environment variable after precompilation would still affect which module is loaded.
my $table;
#BEGIN {
if %*ENV<TABLE_A> {
require MY_TABLE_A <&get_table>;
$table = get_table();
}
else {
require MY_TABLE_B <&get_table>;
$table = get_width();
}
#}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论