Here's what this section of my code looks like
Code:
struct Request;
struct Requester
{
bool beingServiced;
int id;
list<Request*> requests;
};
struct Request
{
Requester* r;
int track;
};
bool operator< (const Request *req1, const Request *req2)
{
return req1->track > req2->track;
}
static priority_queue<Request*> activeRequests;
I changed it to this and it works but I don't understand the operator thing. I'm not overloading "<" anymore...
Code:
struct Request;
struct Requester
{
bool beingServiced;
int id;
list<Request*> requests;
};
struct Request
{
Requester* r;
int track;
};
struct CompareRequest
{
bool operator() (const Request *req1, const Request *req2) const
{
return req1->track > req2->track;
}
};
static priority_queue<Request*, deque<Request*>,CompareRequest> activeRequests;