10

コード内に、条件に応じて for ループを順方向または逆方向に実行するブロックがあります。

if (forwards) {
    for (unsigned x = 0; x < something.size(); x++ ) {
        // Lots of code
    }

} else {
    for (unsigned x = something.size()-1 ; x >= 0 ; x-- ) {
        // Lots of code
    }
} 

for ループ内のすべてのコードを 2 回繰り返さないように、これを設定する良い方法はありますか?

問題の「何か」はstd::vector <>なので、イテレータで可能でしょうか? (私は C++11 を使用していません)

4

4 に答える 4