我有一套双排球,名为golfTrails。
这些集合是指向GolfCourse *类型的对象的指针。
注意:golfTrail可能有空的物品。
高尔夫球场是一个具有以下字段的对象:
高尔夫课程
{
int courseId;
string courseName;
float courseSlope;
}
我想根据双端队列中每个项目的最低CourseId对双端队列进行排序。
例如,
双端队列中的第1个条目(即集合)具有带有课程编号2、4、7、10的课程
双端队列中的条目2包含带有课程编号3、5、6的课程
条目3为空
双端队列中的条目4包含带有课程编号1、8、9]的课程>
这种最终结果应该是:
entry 4
条目1
entry 2
条目3(我不太在乎条目3到底是第一个还是最后一个)
正如我之前说过的,这些集合是基于CourseId排序的,并且集合中的项目是指向对象的指针。
如果我尝试像这样对双端队列进行排序:
sort(golfTrails.begin(), golfTrails.end())
它根据指针的地址进行排序。那不是我想做的。我想根据在该地址找到的对象的courseId进行排序。
我不知道该怎么做。我尝试创建一个比较运算符传递给排序,并且尝试创建一个仿函数来定义双端队列。也许无法完成?
感谢您的帮助!
我有一套双排球,名为golfTrails。这些集合是指向GolfCourse *类型的对象的指针。注意:golfTrails可能有空物品。 GolfCourse是一个具有...
这是您的示例代码示例: