加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c – 函数指针不是函数或函数指针

发布时间:2020-12-16 09:58:18 所属栏目:百科 来源:网络整理
导读:我有以下问题: void MyClass::LoopFunction(vectorItem items,void (MyClass::*funcy)(vectorItem,int)){ for(SInt32 i = 0; i 50; i++) { funcy(items,i); }} 它说: Called object type 'void(MyClass::*)(vectorItem,int)' is not a function or functio
我有以下问题:

void MyClass::LoopFunction(vector<Item>& items,void (MyClass::*funcy)(vector<Item>&,int))
{
    for(SInt32 i = 0; i < 50; i++)
    {
        funcy(items,i);
    }

}

它说:

Called object type 'void(MyClass::*)(vector<Item>&,int)' is not a function or function pointer

任何人都可以帮我找到解决方案吗?

解决方法

funcy是指向成员函数的指针,因此您需要在类的实例上调用它,如下所示:

(this->*funcy)(items,i);

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读