Наверное многие сталкивались с такой проблемой:
Необходимо при компиляции определить что за функция в данный момент компилирируется (например для всевозможных логов ошибок, try...catch, MessageBox и др). Естественно можно написать:
void SomeFunc()
{
#define FUNC_NAME "SomeFunc";
try
{
.
.
.
}
catch(...)
{
MessageBox( 0, "Error in " FUNCNAME, "Error", MB_OK );
}
}