Я хочу обрабатывать ошибки в моей программе на C ++, поэтому я создал несколько классов исключений для управления этими ошибками, но я хочу указать, в какой строке моей программы произошла ошибка.
Я передал макрос LINE конструктору своего класса исключения.
Например:
void f(int i){ // LINE A
if(i<0)
throw(OutOfRange("message", __LINE__); // LINE B
}
void main(){
try{
f(-6); // LINE C
}
catch(const OutOfRange& error){
//do something
}
}
В этом примере я могу получаю только номер LINE B, но я хочу получить номера LINE A и LINE C.
Есть идеи, где и как использовать макрос LINE ??
Спасибо.