如何在 C++ 中处理动态源代码?是否可以使用类似 eval("foo") 的东西?
我有一些函数需要根据用户的选择来调用:
void function1 ();
void function2 ();
...
void functionN ();
int main (int argv, char * argv [])
{
char * myString = new char [100];
...
myString = "1" //user input
cout << eval("function"+myString)();
}
通常是怎么做的?
UPD:根据 slacy 和 clinisbut 的回答,我认为我需要创建一个函数注册表。我想它应该作为一个指向函数的指针数组。问题来了,如何声明一个指向函数的指针数组?