Hallo Andreas,
Ein case fall-through ist eine foot gun, genauso schlimm wie goto.
Beide sind Relikte aus unstrukturierten Assemblerzeiten, die es nach C geschafft und von dort aus viele moderne Sprachen infiziert haben.
Ich bin ganz happy, dass C# zwar die Syntax des switch übernommen hat (hätten sie nicht müssen, aber der Mensch ist ein Gewohnheitstier), aber einen fall-through strikt verbietet. Mehrere Case-Labels für einen Zweig sind ok, aber jeder Zweig muss explizit mit break, return oder throw verlassen werden.
Rolf
--
sumpsi - posui - obstruxi
sumpsi - posui - obstruxi