我正在考虑创建一个程序来将函数存储在一个无法恢复的映射中。是否有可能通过他们的钥匙找到他们并打电话给他们?我也想在其他模块中使用它作为头文件。它会解决相同的内存地址位置还是每次都产生新的内存?
答案 0 :(得分:8)
你的意思是
std::unordered_map<some_key_type, std::function<Output(Input)>> functions;
// ...
functions[some_value](some_input);
如果您这样做,请参阅相关文档:
答案 1 :(得分:0)
#include <functional>
using namespace std;
int add(int a, int b)
{
return a+b;
}
int main()
{
unordered_map<int , function<int(int,int) >> umap ;
//umap[1](5,10);
}
**
output :
std : bad function call
enter code here
**
I want to map that function attibute in value section to int add function
I am unable to map it or how I can write the 'values' function body
答案 2 :(得分:0)
您尚未为umap的键1分配任何功能。
umap.insert(make_pair(1, add));
这样就可以了。