我想檢查一個循環內的條件並在第一次遇到時執行一段代碼。之後,循環可能會重複,但該塊應該被忽略。有沒有這樣的模式?當然,在循環之外聲明一個標誌是很容易的。但我對一種完全存在於循環中的方法感興趣。如何在循環中只運行一次沒有外部標誌的代碼?
這個例子不是我想要的。有沒有辦法擺脫循環外的定義?
bool flag = true;
for (;;) {
if (someCondition() && flag) {
// code that runs only once
flag = false;
}
// code that runs every time
}
爲什麼不將該代碼移出循環? – sharptooth
我沒有看到如何真實地使用標記的問題。如果我不想這樣做,我只是將它移到其他地方。 – Rapptz
假設「退出循環」不是你正在尋找的東西,你怎麼知道應該只執行一次,以及「何時」? –