3 ms·
How do you break out of nested loops without an extra variable set/check to break on in the outer one otherwise? goto is nasty, but in my experience writing HP
by berkut 6y ago
How do you break out of nested loops without an extra variable set/check to break on in the outer one otherwise?
goto is nasty, but in my experience writing HPC code, it does have some uses that can't be solved as efficiently (i.e. without extra branching) otherwise in some situations.
- tomjakubowski 6y agoRust has special syntax to name loops, and to refer to them by name when breaking. 'foo: loop { 'bar: loop { break 'foo } }
- berkut 6y agoCool - in which case, at least based on my experience, that would negate the need for goto in the main situation I end up using them in C/C++. The only other time I've seen it be used fairly regularly is cleanup / return handling, where there are other ways of doing that (RAII structures, if you don't mind creating them), but sometimes using goto for that is just simpler / more obvious than having extra structs/classes to handle that.