假设我有一段 Perl 代码,例如:
foreach my $x (@x) {
foreach my $y (@z) {
foreach my $z (@z) {
if (something()) {
# I want to break free!
}
# do stuff
}
# do stuff
}
# do stuff
}
如果something()
是真的,我想打破('last')所有循环。
我怎样才能做到这一点?我想到了两个选项,这两个选项我都不喜欢: 使用某些东西GOTO
添加一个将标记something()
为 true 的布尔变量,在每个循环恢复之前检查这个 varlast()
是否为 true。
有什么建议或想法吗?
谢谢。