In una conversazione all'inizio di questa settimana stavo discutendo di alcune caratteristiche linguistiche e mi sono reso conto che non ho una buona parola / frase per descrivere una particolare caratteristica.
Alcune lingue, come PHP, hanno un costrutto linguistico che consente break
e continue
istruzioni per accettare un parametro numerico che indica quale blocco deve essere interessato. Ad esempio:
for ($i = 0; $i < 10; $i++)
for ($j = 10; $j > 0; $j--)
if ($j == $i)
break 2;
echo $i;
Poiché break 2;
provoca l'interruzione del ciclo esterno, l'output è 1
. Se questo fosse break 1;
o solo break;
l'output sarebbe 10
.
C # non ha alcun costrutto simile. L'equivalente sarebbe qualcosa di simile a questo:
for (i = 0; i < 10; i++) {
bool broken = false;
for (j = 10; j > 0; j--) {
if (j == i) {
broken = true;
break;
}
}
if (broken)
break;
}
Console.WriteLine(i);
Ma ovviamente, questo può essere ottenuto anche usando goto
.
Quindi la mia domanda è, come la chiami? Esiste un nome specifico per questo costrutto "break n "? Mi piacerebbe poter dire " Lingua X ha un'interruzione parametrica e continue istruzioni ", o qualcosa del genere.