Ben okuyordum biz kullanımına var Neden break
içinde switch
? ve bazı durumlarda (PHP ve JavaScript gibi) örtük düşüşe neden izin verildiğini merak etmeme neden olurken açık düşüş için destek (AFAIK) yoktu.
Yeni bir anahtar kelimenin oluşturulması gerektiği gibi continue
, tam olarak uygun olacağı gibi değil ve yazarın bir davanın düşmesi anlamına gelip gelmediği konusundaki belirsizlik sorunlarını çözecekti.
Şu anda desteklenen form:
switch (s) {
case 1:
...
break;
case 2:
... //ambiguous, was break forgotten?
case 3:
...
break;
default:
...
break;
}
Oysa bunun şöyle yazılması mantıklı olacaktır:
switch (s) {
case 1:
...
break;
case 2:
...
continue; //unambiguous, the author was explicit
case 3:
...
break;
default:
...
break;
}
Bu sorunun amaçları için, düşmelerin iyi bir kodlama stili olup olmadığı konusunu görmezden gelelim.
Düşüşe izin veren ve onu açıkça ortaya koyan herhangi bir dil var mı?
switch
Açık yerine örtülü düşmeye izin veren tarihsel nedenler var mı?
goto case
, C # ' da farkında değildim .
goto case
pdr'den bahsedildiği gibi.
goto case
, bu yüzden sorunuzun öncülünün biraz yanlış olması gerekir.