gpt4 book ai didi

c++ - 在 C++ 中调用指向成员函数的指针时出错

转载 作者:行者123 更新时间:2023-11-28 02:01:48 25 4
gpt4 key购买 nike

class Solution {
public:
bool cmp(pair<int, int>& aa,pair<int, int>& bb){
if(aa.first<bb.first) return true;
else if(aa.second<bb.second) return true;
else return false;
}
int maxEnvelopes(vector<pair<int, int> >& envelopes) {
int i,sz;
sz=envelopes.size();
vector<int> v1,v2;
vector<int>::iterator it1;
vector<int>::iterator it2;
sort(envelopes.begin(),envelopes.end(),cmp);
for(i=0;i<sz;i++){
it1=lower_bound(v1.begin(),v1.end(),envelopes[i].first);
it2=lower_bound(v2.begin(),v2.end(),envelopes[i].second);
if(it1==v1.end()&&it2==v2.end()){
v1.push_back(envelopes[i].first);
v2.push_back(envelopes[i].second);
}
else{
v1[it1-v1.end()]=envelopes[i].first;
v2[it2-v2.end()]=envelopes[i].second;
}
//cout<<v1.size()<<" "<<v2.size()<<endl;
}
return v1.size();
}
};

我收到 “错误:必须使用‘.*’或‘->*’来调用指向成员函数的指针” 当我编译代码时它会将我重定向到 predefined_ops.h 文件在代码块编译器中。

最佳答案

您不能使用非static 成员函数,例如cmp,作为sort 的参数。

sort 的参数必须是全局函数、static 成员函数或可调用对象。

使cmp 成为static 成员函数,以便您的程序运行。

关于c++ - 在 C++ 中调用指向成员函数的指针时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39158344/

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