8

在 C++ 中,我可以为函数提供一个默认参数,该参数默认为__PRETTY_FUNCTION___, ___FILE___, 和___LINE__在调用者处定义的点,而不是在不使用宏的情况下在头文件中提供默认值的点?

4

3 回答 3

6

你不能,但你可以通过一个额外的宏来实现这种行为。例如:

#DEFINE THROW(e) throwException(e, __FILE__, __LINE__);

另一方面,__PRETTY_FUNCTION__不是标准的。

于 2010-08-11T21:08:18.117 回答
1

不会。宏在它们出现的源代码行展开。

于 2010-08-11T21:02:39.053 回答
0

你可能可以......但绝对不是你提到的限制(没有宏)。

于 2010-08-11T21:05:43.283 回答