在 C++ 中是否有可能调用在另一个函数中作为字符串 arg 给出名称的函数。例如:
void func1()
{
// do something
}
void func2()
{
// do something
}
int main()
{
call("func1");
call("func2");
}
最佳答案
您可以创建一个 std::map
的 std::function
C++11
std::map<std::string, std::function<void()> > call;
call["func1"] = func1 ;
call["func2"] = func2 ;
然后,
call["func1"]( ) ;
关于c++ - 按以字符串形式给出的名称调用函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26946497/