__func__是编译器定义的一个局部静态变量(const char的一个静态数组),用于存放函数的名字。
#include<iostream> using namespace std; const char* hello() {return __func__;} int main() { cout << " : in function " << __func__ << endl; cout << hello() << endl; return 0; }
除了C++编译器定义的__func__之外,预处理器还定义了另外4个对于程序调试很有用的名字:
__FILE__存放文件名的字符串字面值
__LINE__存放当前行号的整型字面值
__TIME__存放文件编译时间的字符串字面值
__DATE__存放文件编译日期的字符串字面值