如何将成员函数指针插入映射?

用户名

我有这张地图:

std::map<std::string, std::function<void (std::string)>> cMap;

我不太了解如何为它增加价值?

我试过了

cMap.insert(std :: make_pair(“ test”,&Manager :: testfunc));

cMap [“ test”] =&Manager :: testfunc;

但是我在任何一个上都出现“无法专门化功能模板”错误。

我对函数指针不是很熟悉,并且确实花了几个小时在谷歌上搜索并阅读问题和答案,但是我什么都找不到。请帮我。

编辑:现在,Manager :: testfunc只是:

void Manager::testfunc (std::string value) { }
101010

为了使成员函数指针可调用,必须将其绑定到对象。因此,提供一个Manager对象(例如Manager m),您可以使用std::bind它绑定成员函数(例如void Manager::foo(std::string const&)),然后将其插入到您的对象中std::map,如下所示:

struct Manager {
  void foo(std::string const& str) { std::cout << str << std::endl; }
};

int main() {
  std::map<std::string, std::function<void(std::string const&)>> cMap;
  Manager m;
  cMap.insert(std::make_pair("test", std::bind(&Manager::foo, &m, std::placeholders::_1)));
  cMap["test"]("Hello, world!");
}

现场演示

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何将std:bind作为函数指针插入常量映射

来自分类Dev

如何将成员函数指针传递给std :: function

来自分类Dev

如何将成员函数指针传递给采用常规函数指针的函数?

来自分类Dev

C ++如何将成员函数指针传递给另一个类?

来自分类Dev

C ++将函数指针插入内存

来自分类Dev

C ++将函数指针插入内存

来自分类Dev

如何将成员函数绑定到std :: function?

来自分类Dev

如何将成员函数绑定到std :: function?

来自分类Dev

如何通过重载将成员函数分配给成员函数指针?

来自分类Dev

将成员或非成员函数指针作为参数传递

来自分类Dev

使用指向成员的指针将成员函数作为参数传递

来自分类Dev

将成员或非成员函数指针作为参数传递

来自分类Dev

将成员函数指针传递给C样式函数

来自分类Dev

将成员函数指针作为参数传递给模板方法

来自分类Dev

将成员函数指针与参数包一起使用

来自分类Dev

将成员函数指针传递给父类

来自分类Dev

如何调用指向从映射中检索的成员函数的指针?

来自分类Dev

如何将成员函数添加到现有的Python对象?

来自分类Dev

boost::asio 如何将成员函数传递给 acceptor.async_accept()

来自分类Dev

如何将结构成员指针传递给函数?

来自分类Dev

如何将结构成员指针传递给函数?

来自分类Dev

如何将指针传递给模板类的成员函数?

来自分类Dev

将唯一指针插入无序映射时,为什么C ++给我一个错误?

来自分类Dev

为将成员函数指针作为模板参数的成员函数定义代理

来自分类Dev

不同类的成员函数指针的C ++映射

来自分类Dev

如何将成员子集添加到Python枚举?

来自分类Dev

如何将成员叠加层的objectClass更改为groupOfUniqueNames

来自分类Dev

如何将成员变量绑定到 JSON?- 安卓

来自分类Dev

如何正确地将成员函数作为参数传递

Related 相关文章

  1. 1

    如何将std:bind作为函数指针插入常量映射

  2. 2

    如何将成员函数指针传递给std :: function

  3. 3

    如何将成员函数指针传递给采用常规函数指针的函数?

  4. 4

    C ++如何将成员函数指针传递给另一个类?

  5. 5

    C ++将函数指针插入内存

  6. 6

    C ++将函数指针插入内存

  7. 7

    如何将成员函数绑定到std :: function?

  8. 8

    如何将成员函数绑定到std :: function?

  9. 9

    如何通过重载将成员函数分配给成员函数指针?

  10. 10

    将成员或非成员函数指针作为参数传递

  11. 11

    使用指向成员的指针将成员函数作为参数传递

  12. 12

    将成员或非成员函数指针作为参数传递

  13. 13

    将成员函数指针传递给C样式函数

  14. 14

    将成员函数指针作为参数传递给模板方法

  15. 15

    将成员函数指针与参数包一起使用

  16. 16

    将成员函数指针传递给父类

  17. 17

    如何调用指向从映射中检索的成员函数的指针?

  18. 18

    如何将成员函数添加到现有的Python对象?

  19. 19

    boost::asio 如何将成员函数传递给 acceptor.async_accept()

  20. 20

    如何将结构成员指针传递给函数?

  21. 21

    如何将结构成员指针传递给函数?

  22. 22

    如何将指针传递给模板类的成员函数?

  23. 23

    将唯一指针插入无序映射时,为什么C ++给我一个错误?

  24. 24

    为将成员函数指针作为模板参数的成员函数定义代理

  25. 25

    不同类的成员函数指针的C ++映射

  26. 26

    如何将成员子集添加到Python枚举?

  27. 27

    如何将成员叠加层的objectClass更改为groupOfUniqueNames

  28. 28

    如何将成员变量绑定到 JSON?- 安卓

  29. 29

    如何正确地将成员函数作为参数传递

热门标签

归档