в try-блоке, как это сделать. если не возникает исключение? OBJ-с - PullRequest
0 голосов
/ 25 июня 2010

в стандартном блоке try-catch-error, как я могу посоветовать программе делать что-то только, если не выдается ошибка?

например, если я хочу настроить прокси для чего-то ipна основе, и если все это работает, он должен затемнить кнопку.

Ответы [ 4 ]

1 голос
/ 25 июня 2010

сначала установите для переменной значение true, то есть noError = true

если возникли какие-либо ошибки, установите значение false

0 голосов
/ 25 июня 2010

ок

@ Йоссариан не работает.

@ PeterWong твоя работакомпилятор просто не может интерпретировать if (noerror), это должно было быть if (noerror == false)

0 голосов
/ 25 июня 2010

Вы просто помещаете его в блок try, но после оператора, который может бросить. Если это произойдет, поток управления переключится на блок catch и пропустит более позднюю инструкцию. Это не тот способ, которым try предполагается использовать.

Конечно, если у вас есть несколько операторов, которые могут генерировать исключения, и просто поместить все в один большой глобальный блок try, становится все труднее определить правильное место. Это одна из причин, по которой огромный глобальный блок try является Antipattern.

0 голосов
/ 25 июня 2010

Я бы сделал это так (c #, но идею можно использовать где-то еще)

try {
 try {
 // some code
 }
 catch 
 { throw; }


 // code, done only if there was no error
}
catch {
 // read the exception.
}
...