我想绑定成员函数,但似乎失败了。
Q4kDeviceSource.hh
class Q4kDeviceSource {
public:
void videoStreamCallback(QIPCamStreamCbType streamCbType, uint32_t streamId, uint8_t *buffer, size_t bufferSize);
。。。
}
typedef std::function<void(QIPCamStreamCbType cbType, uint32_t streamId,
uint8_t* buffer, size_t bufferSize)>
StreamCallback;
Q4kDeviceSource.cpp
。。。
StreamCallback videoElementryCb = std::bind(&Q4kDeviceSource::videoStreamCallback, this,
std::placeholders::_1, std::placeholders::_2, std::placeholders::_3, std::placeholders::_4);
videoElementryCb(QIPCamStreamCbType::QIPCAM_STREAMCBTYPE_NORMAL,id,NULL,0);
。。。
构建失败!
./prebuilts / ndk / 9 / sources / cxx-stl / gnu-libstdc ++ / 4.8 / include / functional:2463:error:undefined reference to&#39; std :: __ throw_bad_function_call()&#39; collect2:错误:ld返回1退出状态
答案 0 :(得分:1)
您似乎与gcc
而不是g++
相关联。
不同之处在于,g++
也会链接到libstdc++
,而gcc
则不会。{/ p>
链接g++
或将-lstdc++
添加到链接器命令行。