|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
07.09.2011, 21:39 | #1 |
Форумчанин
Регистрация: 18.04.2009
Сообщений: 688
|
SEH
Здравствуйте, подскажите, пожалуйста, какие части кода эквивалентны try, catch, finally
как я понял, этот кусок эквивалентен catch Код:
этот finally Код:
ну а этот try Код:
Только вот одно непонятно. С началом try вроде понятно. Код:
|
07.09.2011, 21:44 | #2 |
Форумчанин
Регистрация: 18.04.2009
Сообщений: 688
|
И ещё хотел спросить. зачем эти строки. они же дублируют друг друга О_о
или нет?О_о Код:
Последний раз редактировалось Dimarik; 07.09.2011 в 21:48. |
07.09.2011, 23:50 | #3 | |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
Цитата:
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|
07.09.2011, 23:59 | #4 |
Участник клуба
Регистрация: 23.12.2010
Сообщений: 1,129
|
Не дублируют. Первое - занесение значения в регистр, второе - директива ассемблера, которая какбы говорит ему, на что теперь показывает регистр.
|
08.09.2011, 10:37 | #5 |
Форумчанин
Регистрация: 18.04.2009
Сообщений: 688
|
спасибо. Подскажите, пожалуйста,
как я понял,, этот кусок кода эквивалетен catch Код:
|
09.09.2011, 00:42 | #6 |
Участник клуба
Регистрация: 23.12.2010
Сообщений: 1,129
|
Этот кусок не эквивалентен catch. В обработке seh его заменяет блок _except. А приведенный фрагмент, собственно, является тем обработчиком, который вызывается при возникновении исключения.
Принимает он 4 параметра: 1) указатель на структуру EXCEPTION_RECORD с описанием исключения ( http://msdn.microsoft.com/en-us/libr...(v=vs.85).aspx ); 2) Указатель на установочный фрейм для этого обработчика (т. е. то, что записывали в fs:[0]); 3) Указатель на структуру CONTEXT ( http://msdn.microsoft.com/en-us/libr...(v=vs.85).aspx ), содержащую значения регистров в момент возникновения исключения; 4) Пользовательский параметр. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
SEH исключения | eracer | Общие вопросы C/C++ | 0 | 18.11.2009 20:32 |