Re[3]: Определение текущей компилируемой функции в VC++
От: VladD2 Российская Империя www.nemerle.org
Дата: 14.09.01 09:07
Оценка:
Здравствуйте Фатыхов Михаил Хамитович, вы писали:

ФМХ>Здравствуйте VVV, вы писали:


VVV>>есть такие предопределённые макросы

VVV>>__LINE__ — The line number in the current source file. The line number is a decimal integer constant. It can be altered with a #line directive.
VVV>>__FILE__ — The name of the current source file. __FILE__ expands to a string surrounded by double quotation marks.

ФМХ>__LINE__, __FILE__ — это хорошо, а может кто знает как узнать номер строки в которой произошло исключение? т.е.:

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

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

Еще проще поставить ASSERT.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.