我正在尝试对现有程序进行分析,并需要记录行号,而不需要太多修改程序。我一直在使用__LINE__
并希望像这样做:
file.h:
void Function( int iLine = __LINE___ ); // original function had no arguments, but now overloaded to default __LINE__
file.cpp:
void Function( int iLine ) { // original function had no arguments, but now changed to int iLine
// do something here
// log iLine number to a file for analysis
}
main.cpp调用:
Function(); // call existing function
然而,我现在知道这样做行不通,因为
iLine
总是file.h
定义的行号。我尝试过使用StackWalker,但也遇到了困难,而且似乎有些过头了。
有什么建议可以在尽可能减少文件更改的情况下解决这个问题吗?