void (*func_table[])()={ a, b, c, d, e };是啥?
各位高手:
我对C++只是初步了解,有一个简单的问题想请教。有一个程序:
#include <iostream>
using namespace std;
#define DF(N) void N () /
{ cout << "function " #N " called..." << endl; }
DF(a); DF(b); DF(c); DF(d); DF(e);
void (*func_table[])()={ a, b, c, d, e };
int main()
{
while(1)
{
cout << " press a key from 'a' to 'e' or q to quit " << endl;
char c, cr;
cin.get(c); cin.get(cr);
if(c=='q')
break;
if( c<'a' || c>'g' )
continue;
(*func_table[c-'a'])();
}
}
其中的void (*func_table[])()={ a, b, c, d, e };像函数又不太像。这是啥?
请别见笑。