【发布时间】:2010-12-30 11:18:43
【问题描述】:
我想处理我的 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 宏??
谢谢。
【问题讨论】:
-
你想要一个堆栈跟踪/回溯。