3
A
回答
2
可以使用continue
塊隨處可見它是有道理的:與while
,until
和foreach
循環,以及「基本」塊 - 這是不是另一份聲明中的一部分塊。請注意,對於列表迭代構造,您可以使用關鍵字for
而不是foreach
,當然,在這種情況下,您可以使用continue
塊。
正如其他人所說,for (;;)
循環已經有一個continue
部分 - 你會首先執行哪一個?
continue
塊也因爲語法上,這是一個非常不同的事情(do
是一個內置函數取塊作爲它的參數,而while
部分是一個語句修飾詞)不do { ... } while ...
工作。我想你可以使用它們的雙捲曲結構(基本塊內部參數塊),如果你真的必須:
do {
{
...;
continue if $bad;
...;
}
continue {
...; # clean up
}
} while $more;
4
7
從http://perldoc.perl.org/functions/continue.html
如果 存在附加到 一個BLOCK(通常在一段時間或 的foreach一個繼續BLOCK ),在條件即將被 再次評估之前,總是僅執行 ,就像的第三部分 for循環在C.
意味着在for
循環中,第三個參數是繼續表達,例如for (initialization; condition; continue)
,所以不需要。在另一方面,如果在foreach
風格使用for
,如:
for (0 .. 10) {
print "$i\n";
} continue { $i++ }
這是可以接受的。
相關問題
- 1. Perl不會繼續
- 2. 繼續編譯進程
- 3. Catch塊後繼續
- 4. 編輯並繼續
- 5. 等待異步塊繼續
- 6. 編輯並繼續Web應用程序
- 7. Perl中,將stdout但繼續父
- 8. 「高級」編輯並繼續?
- 9. 從父進程在Perl中的子進程繼承的模塊
- 10. XSL-FO - 如何在兩個列表塊中繼續編號?
- 11. 錯誤CS7038(未能發出模塊)只在編輯並繼續
- 12. 爲什麼我在Perl 5.10中不能繼續執行下一個塊?
- 13. TypedQuery無法與布爾繼續在塊
- 14. 如何將繼續添加到if塊
- 15. jQuery中的繼續內容滑塊
- 16. Haskell:繼續執行程序
- 17. Excel進程繼續運行
- 18. C#程序開始繼續
- 19. 「繼續」
- 20. 繼續
- 21. 繼續閱讀繼續觸摸
- 22. Perl如何在繼續執行其他線程的情況下殺死perl中的'流氓'線程
- 23. JQGrid保存並繼續窗體編輯
- 24. 自動禁用編輯並繼續64X
- 25. 標記繼續語句無法編譯
- 26. Hotswapping /編輯並繼續C/C++,Linux
- 27. 激活範圍,允許編輯,繼續
- 28. Delphi - 編譯器繼續出錯
- 29. Visual Studio代碼 - 編輯並繼續
- 30. Git rebase - 繼續打開編輯器
在Perl中13年,我從未編程過一個繼續塊。主要是因爲可以在循環結尾放置相同的語句。它基本上就像一個「下一個」的行爲。但是,當我不想在迭代中再做任何事情時,我只「接下來」。編寫for(; cond(); iteration())...並更容易獲得相同的行爲。 – Axeman 2011-05-11 12:44:18
我同意,Axeman。因爲肯定更可取,並且具有相同的行爲。謝謝。 – madCode 2011-05-11 14:38:09