【发布时间】:2012-10-25 15:56:33
【问题描述】:
我有课,这个课包含一个数字。我有一个向量包含类的对象指针。我想根据它们的数量对这些对象进行排序。我怎样才能做到这一点? 感谢您的回答。
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
class Course
{
public:
Course (int code, string const& name) : name(n), code(c) {}
int getCourseCode() const { return code; }
string const& getName() const { return name; }
private:
string name;
int code;
};
int main()
{
vector<Course*> cor;
vector<Course*>::iterator itcor;
cor.push_back(new Course(3,"first"));
cor.push_back(new Course(2,"sekond"));
cor.push_back(new Course(4,"third"));
cor.push_back(new Course(1,"fourth"));
cor.push_back(new Course(5,"fifth"));
sort (cor.begin(), cor.end());
for (itcor=cor.begin(); itcor!=cor.end(); ++itcor) {
cout << *itcor << ' ';
}
}
例如,当我想要根据它们的地址对对象进行排序时。
【问题讨论】:
-
"我有一个包含类对象的向量。" - 不,它没有。您的向量包含指向对象的指针,而不是对象。
-
@user1559792 - 要“接受”答案,请单击答案旁边的复选标记。要“投票”答案是单击答案旁边的朝上三角形。我认为您尚未接受任何答案。
-
哦,我不知道。我认为“很有帮助”按钮是正确的。
-
这是一个您提出的问题的示例,该问题得到了您不接受的出色答案。请浏览您的问题历史并在适当的情况下接受答案。当你以这种方式提出问题时,你会遇到更少的阻力。 stackoverflow.com/questions/13050436/…