Saut dans une boucle par continue

L’instruction continue s’utilise dans les mêmes conditions que break, mais elle ne provoque pas l’arrêt de la boucle. Simplement, elle fait sauter directement au début du pas de boucle suivant, sans exécuter les ordres suivants. Voici un exemple :

for (int i = 0; i < 100; i++) {
     if (table[i] < 0) continue;
     cout << ( table[i] = sqrt(table[i]) ) << '\t';
     }

Poursuivant toujours de notre haine les nombres négatifs, nous décidons cette fois de les ignorer purement et simplement ; l’écriture ci-dessus ne calculera et n’affichera que les racines carrées des nombres positifs.

Cet exemple est tout à fait factice, et illustre surtout les mauvaises façons d’utiliser continue. Dans un grand nombre de cas en effet, un simple if bien placé fait l’affaire :

for (int i = 0; i < 100; i++)
     if (table[i] > 0)
        cout << ( table[i] = sqrt(table[i]) ) << '\t';

et est généralement plus clair. L’instruction continue doit donc être utilisée avec modération.

Tout comme break, continue ne s’applique qu’à la boucle la plus intérieure. Il s’agit aussi d’un mot réservé.

Précédent Précédent Sommaire Sommaire Suivant Suivant