C++ 函数指针问题 std::function

ypedef std::function DMCallback;
//用这个声明一个函数变量
void Ask(DMCallback *cb);
//参数为函数指针

现在需要把

int HelloWorld::test(int code,const char* msg, const rapidjson::Value &val)
{
return 1;
}

这个函数作为参数放进Ask函数里面,这要怎么做?

2个回答

Ask(HelloWorld::test)
前提是两者函数原型要一致,特别是,你作为成员函数,不要忘记还有一个this指针的参数。

robinsonZ
robinsonZ 我之前是用C->Ask(CC_CALLBACK_1(HelloWorld::test, this));这种形式,但是编译器说不能转换函数
4 年多之前 回复
robinsonZ
robinsonZ ask我是放在一个类里的,是使用单例调用的,比如 C->Ask(函数);
4 年多之前 回复
 Ask(*HelloWorld::test)
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问