gpt4 book ai didi

c++ - 如何封装函数绑定(bind)?

转载 作者:行者123 更新时间:2023-11-28 04:19:36 29 4
gpt4 key购买 nike

我有:

std::function<void(EventCustom*)> f = std::bind( &MyClass::MyFunc, myObj, _1 );

我的代码中使用了上面的行,但不是 MyClass,它可能是 MyClass2、MyClass3、myObj3、myObj2 等,用于代替 MyClass 和 myObj

有什么方法可以将上面的内容包装在一个函数中吗?我遇到的问题是,除非我完全按照上面编写的代码使用代码,否则 bind 的输出不会完全创建 std::function,因此编译器会提示。

EventCustom* 是 cocos2d-x 库中使用的对象。因此,如果您下载并构建一个 cocos2d-x 项目,您就可以使用它。

最佳答案

lambda 呢?

std::function<void(EventCustom*)> f = [&myObj2](EventCustom* pEvent) {
myObj2.MyFunc(pEvent);
};

关于c++ - 如何封装函数绑定(bind)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55770460/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com