csdn_cjc 2021-08-16 21:57 采纳率: 0%
浏览 31
已结题

模板参数是function时,如何以传参列表不同的function做模板实参?

std::function<void(const tstring&)> m_funShowMessage = nullptr;
std::function<void(const USHORT*, USHORT&)> m_funShowCurve = nullptr;

template <typename F>
void RegisterCallBack(int id, F func)
{
    switch (id)
    {
    case CB_SHOWMESSAGE:
        m_funShowMessage = func;            
        break;

    case CB_SHOWCURVE:
        m_funShowCurve = func;
        break;

    default:
        break;
    }
}
// 调用
RegisterCallBack(CB_SHOWMESSAGE, std::bind(&BRControlForm::ShowMessage, this, std::placeholders::_1));
RegisterCallBack(CB_SHOWCURVE, std::bind(&BRControlForm::ShowCurve, this, std::placeholders::_1, std::placeholders::_2));

代码编译报错:
尝试匹配参数列表“(std::function<void (const std::wstring &)>, F)”时

with
[
    F=std::_Binder<std::_Unforced,void (__thiscall BRControlForm::* )(const USHORT *,USHORT &),BRControlForm *,const std::_Ph<1> &,const std::_Ph<2> &>
]
  • 写回答

1条回答 默认 最新

  • 有问必答小助手 2021-08-17 20:29
    关注

    你好,我是有问必答小助手,非常抱歉,本次您提出的有问必答问题,技术专家团超时未为您做出解答


    本次提问扣除的有问必答次数,将会以问答VIP体验卡(1次有问必答机会、商城购买实体图书享受95折优惠)的形式为您补发到账户。


    ​因为有问必答VIP体验卡有效期仅有1天,您在需要使用的时候【私信】联系我,我会为您补发。

    评论

报告相同问题?

问题事件

  • 系统已结题 8月24日
  • 创建了问题 8月16日

悬赏问题

  • ¥20 测距传感器数据手册i2c
  • ¥15 RPA正常跑,cmd输入cookies跑不出来
  • ¥15 求帮我调试一下freefem代码
  • ¥15 matlab代码解决,怎么运行
  • ¥15 R语言Rstudio突然无法启动
  • ¥15 关于#matlab#的问题:提取2个图像的变量作为另外一个图像像元的移动量,计算新的位置创建新的图像并提取第二个图像的变量到新的图像
  • ¥15 改算法,照着压缩包里边,参考其他代码封装的格式 写到main函数里
  • ¥15 用windows做服务的同志有吗
  • ¥60 求一个简单的网页(标签-安全|关键词-上传)
  • ¥35 lstm时间序列共享单车预测,loss值优化,参数优化算法