存对象还是对象的指针都行,存指针的时候,不会出现指针相同的睛况,除非你存入的指针都是指向的同一个对象变量,还有存对象开销也不是怎么大吧,其实存对象还是指针都差不多,我用stl写的一个小程序,存的是指针,没问题。是个最大优先队列。
#include
#include
#include
using namespace std;
struct node
{
int x,y;
};
class cmp
{
public:
bool operator()(node *a,node *b)
{
return a->x < b->x;
}
};
int main()
{
int x,y;
priority_queue
while(cin >> x >> y && (x!=0&&y!=0))
{
node *p = new node;
p->x = x;
p->y = y;
q.push(p);
}
while(!q.empty())
{
node *p = new node;
p = q.top();
q.pop();
cout << p->x << " " << p->y << endl;
}
return 0;
}