Re[4]: Определение текущей компилируемой функции в VC++
От: IT Россия linq2db.com
Дата: 14.09.01 23:18
Оценка:
Здравствуйте VladD2, вы писали:

ФМХ>>1. try

ФМХ>>2. {
ФМХ>>3. int a = b / 0;
ФМХ>>4. }
ФМХ>>5. catch()
ФМХ>>6. {
ФМХ>>7. // Как мне узнать что исключение произошло именно в строке 3?
ФМХ>>7. }

VD>Так поставь в catch TRACE. В его начале выводи имя файла (__LINE__), а за ним дописывай "(__LINE__)". Тогда можно будет (в VC) переходить к этому месту как к ошибке.


В этом случаее __LINE__ выдаст строку 7, а по условию нужна именно 3. Насколько мне известно, никакого известного науке способа узнать о месте исключения после исключения нет. По крайней мере в отладчике об этом узнать невозможно, так как стек откатывается в обратную сторону.
Если нам не помогут, то мы тоже никого не пощадим.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.