如何解决如何根据其参数对指针数组进行排序
这是我的函数,需要从transports
指针数组中打印价格比Transport * t元素大的所有元素
void pecatiPoloshiPonudi(Transport **ponudi,int brEl,Transport &T)
{
//cout<<T.getDestinacija();
for (int i=0;i<brEl;i++)
{
if(T.getPrice() < ponudi[i]->getPrice())
{
cout<<ponudi[i]->getDestinacija()<<" "<<ponudi[i]->getRastojanie()<<" "<<ponudi[i]->getPrice()<<endl;
}
}
}
我得到了这个,但是我需要它按照它们的price
升序排列。
解决方法
您可以将std::sort
与自定义比较器一起使用,如下所示
std::sort(ponudi,ponudi + brEl,[](const auto & lhs,const auto & rhs )
{ return lhs -> getPrice() < rhs -> getPrice();});
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。