PDA

Просмотр полной версии : Цикл + try-catch - лучшие практики?


wvxvw
17.07.2011, 20:38
Вопрос не относится к AS3, а к любому ЯП. Что лучше:
for (...) {
try { ... }
catch { ... }
}
или
try {
for (...) { ... }
}
catch { ... }?

А, что касается AS3 - кто-нибудь тестировал "пайтоновский" цикл (с выходом по ошибке) типа такого:
try {
for (var i:int;; i++) vector[i];
}
catch (error:Error) { }
Будет ли это всегда медленнее варианта без ошибки, или на больших векторах есть смысл (у меня сейчас не на чем попробовать)?

BlooDHounD
17.07.2011, 22:06
с точки зрения логики АС3 второй вариант быстрее. но увы он не всегда работает, так как это логически разные вещи на самом деле. ну да ты сам должен понимать. просто в блоке try .. catch оно обрабатывается типа как в дебаге. и там типа отдельный скоуп создаётся. надо ковырять для подробностей.

wvxvw
17.07.2011, 23:38
А, сорри, забыл уточнить, подразумевается что после ошибки мы и в том и в другом случае выходим из цикла.

BlooDHounD
18.07.2011, 00:08
ну я так и понял. но всё равно второй.