这不应该太难,但我被卡住了。
我正在尝试将函数分配给变量,但我需要知道数据类型,以便将其分配给地图。
我成功地做到了这一点:
auto pfunc = Ext::SomeFunction
Run Code Online (Sandbox Code Playgroud)
这将允许我做:
pfunc(arg, arg2);
Run Code Online (Sandbox Code Playgroud)
但是我需要知道“auto”涵盖的数据类型,以便我可以将我的函数映射到字符串。
例如:
std::unordered_map<std::string, "datatype"> StringToFunc = {{"Duplicate", Ext::Duplicate}};
Run Code Online (Sandbox Code Playgroud)
这些函数中的大多数返回 void,但还有其他函数返回 double 和 int。
如果有更好的方法可以做到这一点,请告诉我,但我真的很想知道上面使用的 auto 背后的数据类型。
非常感谢您提供的任何帮助。