I am trying to customize my sorting of a LIST using a compare_function, but for some odd reason it keeps giving me the following error:
error C2064: term does not evaluate to a function taking 2 arguments
Specifically, I have list created within class B which needs to be sorted, the list contains elements of type A* as shown below:
Class B code:
B::B()
{
list<A*> AList;
AList.push_back(new A(ID_1, CODE_1));
AList.push_back(new A(ID_2, CODE_2));
AtList.sort(&B::compareID);
}
bool B::compareID(A* first, A* second)
{
return true; // test for now
}
Just for completness the following is the code for Class A:
Class A
{
long ID;
string sCode;
A(_ID, _sCode) : ID(_ID), sCode(_sCode) {};
}
So, pretty much I just want to sort AList by ID, but for some odd reason this generates:
error C2064: term does not evaluate to a function taking 2 arguments
Also, in the future I am going to want to create a compareCode() function to also compare by code ... thought if one way works so will the other ...
Any clues, hints, or help would be greatly appreciated.
Thanks,